Hey everybody So I’ve been doing an experiment in operating systems. I'm trying to make a Linux kernel environment where you can develop programs using Kotlin. This is a completely sandboxed environment. It does not require any other programs to run. When the Linux kernel starts up, it usually hands control to a program that helps get things going. This program contains a lot of C code and bash scripts. I wanted to see if I could kill all of that and only use Kotlin. Instead of a standard root filesystem, I wrote a Kotlin program and compiled it ahead-of-time into a statically linked linux_x64 binary using Kotlin/Native. By passing init=/init.kexe in the kernel boot parameters (via QEMU), the Linux kernel hands control directly to the Kotlin executable as PID 1.…