An Operating System Kernel written in Rust (x86_64 architecture).
- Memory management (paging, heap allocation)
- Legacy UEFI boot support
- Interrupt handling
- ANSI keyboard input
- VGA text mode output
- Basic Shell (work in progress)
- RAM based file system (work in progress)
- ELF executable loader (work in progress)
Screen.Recording.2026-05-07.at.8.52.37.PM.mov
To test the Duck OS kernel, you can use QEMU, a popular open-source emulator. Follow these steps:
- Download the latest release from https://github.com/arjav0703/duck_os/releases
- Install qemu (https://www.qemu.org/download/)
- Run the following command in your terminal (make sure the filename is appropriate).
qemu-system-x86_64 -drive format=raw,file=bootimage-kernel.bin -serial stdioThroughout the development of the project, I had tab completions turned on in my code editor (neovim btw :P). Occasionally used opencode to debug (some parts of the memory management section).