KVM is indeed a much better hypervisor, but it does require some setup with the terminal.
Since he is a beginner I decided to recommend virtualbox since it just works after installing. But if he doesn’t mind setting up things via terminal then KVM is definitely the way.
“Systemd provides a lot of network functionality in systemd-networkd, journald, timesyncd, etc. that is remote attack surface. All the systemd “cloud of daemons” is tightly coupled by dbus interfaces that enable an attacker to move from one exploited system service to the next. Even if the attacker doesn’t manage to find an exploit in another system service, DoS is easily possible because the DBUS interfaces are quite fragile. Even as a benevolent admin it is easily possible to get the system into a state where e.g. clean shutdown is no longer possible because systemctl doesn’t want to talk to systemd any longer and you cannot fix that. systemd-udevd also has raceconditions galore, so sending any message to it in the wrong order relative to another one will kill the system, maybe even open exploit vectors. At the very least I would, for hardening, recommend not using any network-facing systemd functionality.
And lines of code are not ridiculous, they are the best first-order estimate available. Of course an actual inspection of the code is better for a comparison, but that is a huge task. sloccount is quick and easy.”
Like some have mentioned, if you want to try different distros setup a VM (I would recommend KVM for better performance, but virtualbox is easier for beginners in VMing) with the iso of the distro you want to test out.
Like this you can keep a functional system without the hassle of having to setup on baremetal just for testing and having to go back again if doesn’t pay-out.
Also would suggest messing around with more tech-savy setups like debian and fedora (specially minimal ones) if you want to delve deeper into the Linux nerdiness.
In regards to the VM, you can alucate as much ram and cpu power to it to make it performe better if needed (when setting up and you can also adjust it afterwards, at least in virtmanager (KVM) ). And there is an aspect I haven’t really touched but heard that it improved performance which is gpu passthrough.
(I dont really limit processes and stuff, just simple alucation and configuration)