One of the things Ciro Santilli really likes, see: Linux Kernel Module Cheat.
If computational physics simulates physics, emulators simulates computers.
The leading open source cross architecture and KVM emulator of the 2010's.
Great way to understand how operating systems work, which Ciro Santilli used extensively in his Linux Kernel Module Cheat.
Ciro Santilli has some good related articles listed under: the best articles by Ciro Santillis.
User mode emulation refers to the ability of certain emulators to emulate userland code running on top of a specific operating system, usually Linux.
For example, QEMU allows you to run a variety of userland ELF programs directly on it, without an underlying Linux kernel running.
User mode emulation is achieved by implementing System calls and special filesystems such as /dev manually on the emulator one by one.
The general tradeoff is that simulation is less acurate as it may lack certain highly advanced kernel functionality you haven't implemented yet. But it is much easier to run executables with it, and you don't have to wait for boot to finish before running, you just run executables directly from the command line.
This is especially interesting for user mode emulation.
Stopped 2019 apparently. Shame. We need something to be upstreamed!