MCPcopy Index your code
hub / github.com/SamyPesse/How-to-Make-a-Computer-Operating-System

github.com/SamyPesse/How-to-Make-a-Computer-Operating-System @0.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release 0.1.0 ↗ · + Follow
849 symbols 1,750 edges 372 files 103 documented · 12% updated 4y ago0.1.0 · 2014-06-06★ 22,41445 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

How to Make a Computer Operating System

Online book about how to write a computer operating system in C/C++ from scratch.

Caution: This repository is a remake of my old course. It was written several years ago as one of my first projects when I was in High School, I'm still refactoring some parts. The original course was in French and I'm not an English native. I'm going to continue and improve this course in my free-time.

Book: An online version is available at https://www.gitbook.io/book/SamyPesse/how-to-create-an-operating-system (PDF and ePub). It was been generated using GitBook.

Source Code: All the system source code will be stored in the src directory. Each step will contain links to the different related files.

Contributions: This course is open to contributions, feel free to signal errors with issues or directly correct the errors with pull-requests.

Questions: Feel free to ask any questions by adding issues. Please don't email me.

You can follow me on Twitter @SamyPesse or support me on Flattr or Gittip.

What kind of OS are we building?

The goal is to build a very simple UNIX-based operating system in C++, not just a "proof-of-concept". The OS should be able to boot, start a userland shell, and be extensible.

Screen

Core symbols most depended-on inside this repo

Shape

Function 434
Method 266
Class 144
Enum 5

Languages

C++57%
C43%

Modules by API surface

src/kernel/core/file.cc34 symbols
src/kernel/core/process.cc32 symbols
src/kernel/arch/x86/x86.cc20 symbols
src/kernel/modules/ext2.cc19 symbols
src/kernel/arch/x86/vmm.cc18 symbols
src/sdk/src/libc/src/trio/trio.c17 symbols
src/kernel/arch/x86/architecture.cc17 symbols
src/kernel/core/api_posix.cc16 symbols
src/kernel/modules/ide.cc15 symbols
src/kernel/modules/bochsvbe.cc15 symbols
src/kernel/core/user.cc15 symbols
src/kernel/runtime/cxx.cc14 symbols

For agents

$ claude mcp add How-to-Make-a-Computer-Operating-System \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page