2026-07-04
So I've decided to try my hand at building a very simple x86-based operating system.
I have no idea what this will entail, really. Nor do I know how far it will go. But I do have many years of programming experience, some experience with x86/x64 assembly, virtual machines, and an Acer Acros 486 from 1994 I can test it out on in case I want to test on some real hardware.
Why build an operating system?
Morbid curiosity? A magnetic attraction to pain? Childhood trauma manifesting as a need to punish myself by writing esoteric and incredibly complicated software? I'm not sure. Actually, no, I do have a few reasons:
-
I enjoy low-level programming. Like, on the bare metal. I've always had an interest in hardware and low-level computing. I enjoy bit twiddling and figuring out how it works at the lowest level possible.
-
The act of creating something completely from scratch. I mean completely! Obviously I can't create the hardware itself, but I can create everything from the BIOS up.
-
As a learning experience and to help keep my programming skills sharp. As AI is becoming more integrated into my job with AI "mandates", I'm able to code less and less and the code that does get written I feel detached from. It's hard to really learn the code, understand it, and know it through and through, when you didn't write it.
Basically when writing code via AI, you skip over the stage where you know the code because you wrote it and go right to the stage where you (or someone else) wrote the code 6 months ago and now no one knows how it works.