RudzaniOS is a custom, minimal 32-bit protected-mode operating system built entirely from scratch. It features its own bootloader, kernel, memory management, virtual filesystem, and an interactive shell loaded with custom tools and arcade games.
- Custom Bootloader (16-bit to 32-bit protected mode translation via LBA)
- Interactive Shell with the following built-in commands:
help- Show the help messageclear- Clear the screenabout- Display OS informationuptime- Show ticks since bootmeminfo- Show memory usage and page allocationmalloc- Test heap allocationls- List files in the current directorycd <dir>- Change directorypwd- Print working directorymkdir <d>- Create a new directorytouch <f>- Create an empty fileshow_me <f>- Print file contents to the screenecho- Echo text back (or print file if argument is a file)cp <src> <dst>- Copy a filecut <src> <dst>- Move (cut) a filerm <f/d>- Remove a file or directorynda <f>- A fully functional terminal text editor (nano-style)sysmon- Dynamic system monitor (tracking CPU info and RAM usage, top-style)calc <eq>- Mathematical calculator (supportssin,cos,tan,sqrt,log,^, parentheses, PEMDAS)ps- List active running processeslets_play- Launch the RudzaniOS Arcade Machinereboot- Reboot the systemhalt- Halt the CPU safely
- Virtual File System (VFS) with an initial Ramdisk (initrd) and dynamic slot reuse for directories/files.
- RudzaniOS Arcade Machine (
lets_play):- 🍎 Snake
- 🏓 Pong (vs AI (Honestly ist just the computer BUT for 2026 markets sake we will call it an AI lol))
- 🧱 Tetris
To build and run RudzaniOS, you need the following tools (the MSYS2/MinGW toolchain is recommended on Windows):
gcc(MinGW 32-bit cross-compiler or similar)nasm(Assembler)ld,objcopy(Binutils)qemu-system-x86_64(For emulation)
The project includes a unified build.sh script to handle assembling the bootloader, compiling the C kernel, linking the PE binary, and generating the final disk image.
# Build the OS image (os.iso)
./build.sh
# Build the project and launch it instantly via QEMU
./build.sh run
# Clean all build artifacts
./build.sh cleanIf you want to run RudzaniOS on VirtualBox instead of QEMU, you need to convert the raw disk image (os.iso) into a VirtualBox Disk Image (.vdi).
If you have VirtualBox's tools in your system PATH, you can run:
VBoxManage convertfromraw build\os.iso build\os.vdi --format VDIAlternatively, build.sh is configured to automatically attempt converting it via qemu-img when building.