A practical guide and GitHub-hosted project by Samy Pesse that walks you through building a very simple UNIX-based operating system in C++, designed to boot, launch a userland shell, and remain extensible. It’s more than a proof of concept—it’s meant to be functional and educational. All the system source code will be stored in the src directory. Each step will contain links to the different related files. This course is open to contributions, feel free to signal errors with issues or directly correct the errors with pull-requests.
Features
- Step-by-step guidance to build a bootable kernel in C++
- Uses GNU GRUB for multiboot support and kernel loading
- Starts with BIOS boot and transitions into a minimal shell environment
- Teaches low-level concepts like linking, assembly, and ELF format
- Apache‑2.0‑licensed source with documentation via GitBook
- Intended to be extensible and educational rather than production-ready
Categories
Operating SystemsLicense
Apache License V2.0Follow How to Make a Computer Operating System
Other Useful Business Software
MongoDB Atlas runs apps anywhere
MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
Rate This Project
Login To Rate This Project
User Reviews
Be the first to post a review of How to Make a Computer Operating System!