An l4re system is started through QEMU by using (for example) something like: qemu-system-x86_64 -nographic -kernel bootstrap \ -append bootstrap \ -initrd "fiasco -serial_esc,sigma0,moe --init=rom/posix_test,l4re,posix_test" Notice that: - The "bootstrap" executable is used as a kernel - The real ukernel (fiasco) and the servers are loaded as modules - Remember? A module is some kind of "binary blob" loaded by the bootloader (integrated in qemu, in this case) without parsing it The "bootstrap" executable will read all the modules from memory, parse them (as ELF executables) and relocate them in memory, so the they can be executed. The ukernel "fiasco" is then started by bootstrap and finds two important servers ("sigma0" and "moe") already loaded in memory. The "moe" server is then in charge of loading the additional servers ("l4re") and programs ("posix_test") from a pseudo-filesystem located somewhere in memory.