Setting up the VM

Ubuntu Server 26.04 LTS, later installed desktop via

sudo apt update
sudo apt install ubuntu-desktop
sudo reboot

Invert scrolling

IMPORTANT: need to use EMULATION option on UTM, not VIRTUALIZE? Virtualize does not virtualize the CPU (actual instructions run on your CPU, faster, but more limited). Emulate lets you run any architecture machine but can be much slower

https://docs.kernel.org/

To allow host ssh connection:

yf4zhang@yf4zhang:~$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: enp0s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 9e:62:1e:d3:8d:a3 brd ff:ff:ff:ff:ff:ff
    altname enx9e621ed38da3
    inet 192.168.64.7/24 brd 192.168.64.255 scope global dynamic enp0s1
       valid_lft 3068sec preferred_lft 3068sec
    inet6 fdfa:6acf:fa02:39f8:9c62:1eff:fed3:8da3/64 scope global dynamic mngtmpaddr noprefixroute 
       valid_lft 2591960sec preferred_lft 604760sec
    inet6 fe80::9c62:1eff:fed3:8da3/64 scope link proto kernel_ll 
       valid_lft forever preferred_lft forever
yf4zhang@yf4zhang:~$ sudo ufw allow ssh
Rules updated
Rules updated (v6)

Then on host:

ssh [email protected]

Netdev linux kernel branch

Question for professor: which branch to use? The networking team’s branch or linux stable which should have the devmem TCP? git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git

git clone --depth 1 [<https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/>](<https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/>)

Now I have the linux kernel downloaded, an ubuntu VM setup.