Some may recall a post I wrote a few weeks ago on the differences between microkernel and monolithic kernel operating systems. The motivation for that post had started months ago when I decided to write a microkernel OS from scratch to bolster my understanding of these systems, and generally just to enjoy a hobby of mine; besides, I had a ton of new free time (thanks COVID-19). I’ve been working on a project I’ve called LμKOS (pronounced “Lucas” like the name), which stands for the Learning μ-Kernel OS. It’s named so, because I am learning how to build a microkernel OS, and I thought the name would be a bit catchy!
Goals, Aspirations, Expectations
My goals for this project are fairly simple and straightforward. Build a microkernel OS starting with zero knowledge of how to implement this style of OS, and work through all the engineering challenges that come with the domain. I aspire to have a functional OS which can host some interesting workloads. I expect that I will encounter challenges (I have encountered many already!) and I will detail those on my blog occasionally, especially the ones I found interesting or difficult to solve.
I’ve put the link to the GitHub repo below and on the Projects page of my site. In the coming weeks I will be posting more content related to the development as I find the time to work it. I hope you find it interesting! Please feel free to reach out if you have questions, fork the repo, etc.!
GitHub Link: https://github.com/jacobcalvert/lukos
Project Page Link: Projects