A hobby operating system written in C, focused on learning kernel development and low-level systems programming.
MasterOS is a lightweight, open-source operating system written primarily in C, with an experimental Rust branch for exploring modern systems programming.
Rather than targeting everyday desktop use, MasterOS is a learning-oriented operating system designed to explore:
- Kernel development
- Memory management
- Interrupt handling
- Device drivers
- VGA graphics
- Filesystems
- Command-line interfaces
- Low-level x86 programming
MasterOS currently provides a lightweight terminal user interface (TUI) while a graphical interface is planned for future releases.
The project has evolved through multiple generations.
A simple operating-system simulation written entirely in Batch.
Rewritten in C# using the COSMOS Toolkit to create a bootable operating system.
A complete rewrite in C, featuring its own kernel, drivers, memory management, interrupt handling, and command interpreter.
A parallel implementation in Rust, created for learning modern systems programming concepts.
- Lightweight kernel
- Interactive shell
- Command interpreter
- VGA text mode support
- Keyboard input
- Interrupt Descriptor Table (IDT)
- Memory management
- Executable loader
- Dynamic version system
- Modular architecture
- Open source
| Component | Minimum |
|---|---|
| CPU | x86 |
| RAM | 16 MB |
| Storage | 32 MB |
| GPU | Optional |
These requirements were measured during testing.
sudo apt install \
build-essential \
gcc \
g++ \
make \
cmake \
nasm \
xorriso \
grub-pc-bin \
grub-common \
mtools \
qemu-system-x86 \
gdb \
git \
wget \
curl \
python3 \
python3-pip \
bison \
flex \
libgmp3-dev \
libmpc-dev \
libmpfr-dev \
texinfo \
libisl-devgit clone https://github.com/gtaha23/MasterOS.git
cd MasterOSmakemake runor
qemu-system-i386 -cdrom kernel.iso \
-drive file=disk.img,format=raw,index=1,media=disk,if=ide \
-boot d -m 32 \
-display gtk \
-audiodev alsa,id=speaker \
-machine pcspk-audiodev=speaker- Interrupt handling
- Memory management
- Shell
- VGA driver
- Executable loading
- GUI
- Virtual file system
- FAT support
- Better scheduler
- Networking
- User mode
- Multitasking
- ELF loader
- USB support
- Audio
- Improved interrupt debugging
- Dynamic version constant
- Fixed execution crashes
- Memory subsystem improvements
- IDT fixes
- Executable loader patches
| Name | Role |
|---|---|
| gtaha23 | Founder & Lead Developer |
| e0tra | Developer |
MasterOS is built to learn how modern operating systems work from the ground up.
Instead of relying on existing kernels, nearly every subsystem is developed manually, making the project an excellent playground for systems programming.
Whether you're interested in kernels, bootloaders, drivers, or low-level architecture, contributions and discussions are always welcome.
Contributions are welcome!
Feel free to:
- Report bugs
- Suggest features
- Improve documentation
- Submit pull requests
If you'd like to become part of the development team, don't hesitate to get in touch.
This project is licensed under the GPL License.
Built with ❤️ in C (and a little Rust).
⭐ Star the repository if you enjoy operating system development.




