All projects
Systems

MiniOS

Minimal operating system kernel

Overview

A small operating system kernel built from scratch to learn low-level systems programming — bootstrapping, memory management, interrupt handling, and kernel architecture on x86.

In detail

MiniOS is a learning-focused operating system kernel written in C and x86 Assembly. The project starts from the earliest boot stages — the bootloader handing control to a minimal kernel — and progressively adds the primitives a real OS needs: a Global Descriptor Table, Interrupt Descriptor Table, interrupt service routines, and a simple frame for memory management. The goal is not a production OS, but a clear, readable codebase that makes the leap from 'code that runs' to 'code that the hardware boots and runs' tangible.

Key engineering points

  • Custom bootloader and boot sequence
  • Interrupt descriptor tables and interrupt service routines
  • Basic memory management and segmentation
  • Direct hardware interaction through I/O ports