Intro
rou2exOS (shortened to r2) is a DOS-inspired hobby operating system for the x86_64 architecture, written in Rust and x86 assembly.
It boots via GRUB/Multiboot2, runs in 64-bit long mode with a custom identity-mapped page table, and exposes a kernel shell backed by a preemptive round-robin scheduler.

Fig. 1: The initial screen of the MEMENTO GUI experiment. The screen is shown right after the boot (if configured in the init script so). That "thing" on the right is the mouse cursor ready to be moved by a PS/2 mouse.
The kernel speaks directly to the hardware:
- ISA DMA for floppy I/O (FAT12),
- ATAPI PIO for CD-ROM (ISO9660),
- an RTL8139 NIC for Ethernet/TCP networking,
- a VESA framebuffer or VGA text mode for output.

Fig. 2: External userspace program demo called MEMENTO.ELF. Login window in the foreground, a wallpaper in the background.

Fig. 3: The Clock window in the MEMENTO GUI experiment.
Userland programs are flat ELF binaries loaded into a fixed region (0x600_000–0xA00_000) and call into the kernel via interrupt 0x7F.

Fig. 4: Kernel shell init. The verbose output is generated by just-started external applications. The INIT.RC script file is parsed and executed by the shell command interpreter.
Releases
To run the latest release of the kernel (r2.iso) and the aux floppy image (fat.img), just visit link below and download both files to your machine.
Please consult the Build & Run page to see options on how to run the system in QEMU locally.
qemu-system-x86_64 -boot d -cdrom r2.iso -fda fat.img
Repositories
Blog posts
- Original RoureXOS project (krusty.space), June 6, 2024
- rou2eXOS Rusted Edition (blog.vxn.dev), May 30, 2025
- Show HN: A DOS-like hobby OS written in Rust and x86 assembly (news.ycombinator.com), June 19, 2025
- rou2exOS: a DOS-like hobby operating system written in Rust (osnews.com), June 20, 2025
- Developer Creates Rust-Based DOS-Like Operating System with Modern Networking Stack (finance.biggo.com), June 20, 2025
- rou2exOS - Rust와 x86 어셈블리어로 작성된 Dos-like 취미 OS (news.hada.io), June 24, 2025
Note: Some portions of this documentation have been generated from the original source code by AI.