Analysis updated 2026-05-18
Study how a bootloader, kernel, memory paging, and process scheduler are implemented by reading a complete working example.
Use MiraOS as a starting point for building your own OS kernel features like a custom filesystem or new device driver.
Run the OS in a virtual machine to observe how the boot sequence and kernel initialization actually execute.
| iamdaven/miraos | adroxz1122/injected-host-enumeration | loganw234/mercenaries2 | |
|---|---|---|---|
| Stars | 1 | 1 | 1 |
| Language | C | C | C |
| Setup difficulty | hard | moderate | hard |
| Complexity | 5/5 | 3/5 | 5/5 |
| Audience | developer | developer | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires an x86 emulator like QEMU and a cross-compiler toolchain to build and run the OS from source.
MiraOS is an operating system written from scratch in C and Assembly, built as a learning project for understanding how operating systems work at a low level. It targets 64-bit x86 hardware and runs in a virtual machine or emulator. The project covers the core parts of what makes an operating system function. It includes a custom bootloader that loads the kernel directly without relying on GRUB, a kernel that sets up the fundamental CPU data structures (GDT and IDT), manages memory with paging and a simple heap allocator, and runs multiple tasks through a basic scheduler. There is a RAM-based virtual filesystem that stores files entirely in memory, basic networking hooks, and driver support for display, keyboard, mouse, and timers. A minimal graphical shell provides a simple interface. The codebase is organized into folders for each major subsystem: boot code, CPU and hardware setup, kernel core, drivers, filesystem, networking, interface, and shared utilities. The README describes the boot sequence as starting with a BIOS sector that displays a brief message and pauses while the kernel is loaded from outside before handing over control. This is a from-scratch educational project rather than a usable general-purpose operating system. It is intended to demonstrate and explore how the fundamental pieces of an OS fit together. The project is released under the GPL 3.0 license, which requires that any modified version you distribute must also be made available under the same terms.
A from-scratch 64-bit x86 operating system written in C and Assembly as a learning project, covering bootloader, kernel, memory management, multitasking, drivers, and a minimal shell.
Mainly C. The stack also includes C, Assembly, x86_64.
GPL 3.0, you can use and modify freely, but if you distribute a modified version you must also release the source code under GPL 3.0.
Setup difficulty is rated hard, with roughly 1h+ to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.