I wanted to learn more about what it takes to go from bare metal -> a working environment, so I have an operating system project. I work on this occasionally, not really meant to be used. Implemented some kernel libraries, a serial line, and a virtual memory allocator. Intended to be compatible with i386 (to run on some of my retro hardware) - so no QOL to do with page management.
Links: kernel | bootloader