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

Project Samples

Project Activity

See All Activity >

License

Apache License V2.0

Follow How to Make a Computer Operating System

How to Make a Computer Operating System Web Site

Other Useful Business Software
Field Service+ for MS Dynamics 365 & Salesforce Icon
Field Service+ for MS Dynamics 365 & Salesforce

Empower your field service with mobility and reliability

Resco’s mobile solution streamlines your field service operations with offline work, fast data sync, and powerful tools for frontline workers, all natively integrated into Dynamics 365 and Salesforce.
Learn More
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!

Additional Project Details

Programming Language

C

Related Categories

C Operating Systems

Registered

2025-08-12