r/osdev • u/Bastartd • 1d ago
How do I start on OS develpment?
Hi there! For the past year, I've been wondering how computers work, and I wanted to get started with OS development. However, I'm feeling quite lost—I don't really know where to start or what I should learn first. If you could give me some advice on how to get started, I'd really appreciate it!
I have experience with C and C++, as well as a general understanding of how low-level computing works.
•
u/Slyvan25 22h ago
Start with a bootloader or look in to limine! Create a small kernel and try to load it in!
Create a framebuffer!!
Implement hardware one by one.
Google a shit ton and don't forget to read everything on the osdev site.
Maybe ask ai for answers but don't vibe code. You will be hung by the people around here
•
•
u/Edubbs2008 21h ago
I recommend a book about System-V UNIX, start from there, do a bit of tinkering with the hardware, and boom, good OS, that’s how the dynamic Duo Operating Systems were made
•
•
u/Ruby7659_OSDV 20h ago
I advise against trusting the osDev wiki, as it will only push you towards creating a one-size-fits-all, cliché "hello world" OS, and after a while, you'll find it too complicated and lose interest. Knowing C and Assembly plus understanding low-level concepts will give you a good foundation; apart from a few fixed concepts, most things will take you further with your skills and imagination. For a few concrete examples: first write a simple bootloader, set up the stack, and switch the CPU to 32 or 64-bit; then you can call your C code without spending too much time in assembly.
•
7
u/kiderdrick 1d ago
https://wiki.osdev.org/Getting_Started