OPERATING SYSTEM · RUST
kaguyaOS
A hobby operating system written in Rust, targeting x86_64 UEFI.
From boot to userspace
kaguyaOS boots through UEFI with a GOP framebuffer and builds toward a small but complete system: Ring 0/3 isolation, syscall/sysret, preemptive round-robin scheduling, SMP startup, per-CPU kernel state, and a custom KEF executable format.
Drivers and storage
The kernel includes xHCI USB keyboard support, an NVMe SSD driver, E1000 Ethernet with ARP and ICMP, and a FAT16 filesystem supporting file creation, reading, writing, deletion, and listing. A userspace shell and small utilities exercise those pieces through system calls.
Why I build it
Operating systems are a useful excuse to cross abstraction boundaries. Scheduler behavior, page tables, interrupts, device MMIO, filesystems, networking, and user/kernel boundaries all have to agree for even a tiny command to work.