QuasarX OS is a modular, terminal-first operating system built from scratch with a custom kernel written primarily in Rust, with key low-level components in C. Its goal is to explore the inner workings of modern operating systems with emphasis on performance, low-level control, and security.
β οΈ This is a work-in-progress system. It is functional but not production-ready.
- π§ Kronos Kernel: A monolithic, preemptive multitasking kernel with paging, trap handling, memory allocators, and interrupt control.
- π nnsh Shell: A command-line interface resembling UNIX shells, with built-in command dispatch and user scripting.
- π¦ io.initX Init System: A BSD-style service manager responsible for booting the userland, daemons, and service tree.
- π FAT Filesystem Support: Includes FAT12/16/32 support with long filename (LFN) capabilities and mountable USB volumes.
- π Full Network Stack: ARP, IPv4, ICMP, UDP, DNS, TCP with basic socket abstraction and daemons.
- π POSIX-style Auth & Permissions: User/group management,
/etc/passwd,UID/GID, ACL support andsudo.
- Build a full OS from bootloader to userland in Rust/C.
- Teach kernel internals: GDT/IDT, paging, heap, USB, file systems, and networking.
- Provide a minimal yet extensible userland environment (CLI-first).
- Stay modular: replaceable shell, init, drivers, FS, etc.
- Emphasize low-latency terminal computing over heavy GUIs.
| Component | Description |
|---|---|
Kronos |
Core kernel with task switching, MMU, traps |
nnsh |
Default shell (Unix-like CLI) |
ceres |
Minimal terminal text editor |
sirius |
Terminal-based ASCII/UTF-8 web browser |
lilica |
Optional graphical window manager (command-started) |
io.initX |
BSD-style init system for service control |
pkg |
Built-in package manager (install/remove/list) |
- ARP (Address Resolution Protocol)
- IPv4 Layer with routing logic
- ICMP (ping support)
- UDP + basic DNS resolver (
nslookup) - TCP with basic stream interface and services
- DHCP client (optional)
- FTP/TFTP (under implementation)
- TLS (in progress)
- UID/GID with ACL and mount permissions
- Login/logout with credential storage
- Command access controlled via permissions
- Service visibility and privilege restrictions
- Built-in firewall and service access control
| Feature | Status |
|---|---|
| Kernel | β Functional (multitasking, paging) |
| Shell | β Working (nnsh) |
| Filesystem | β FAT with LFN support |
| Networking | β UDP, TCP, DNS, ICMP implemented |
| Userland | β Basic tools: ceres, sirius |
| Init system | β io.initX (BSD-style) |
| USB support | β OHCI and keyboard/mouse |
| Package Manager | β
pkg install/remove/list |
| GUI/WM (optional) | π§ͺ Prototype (LilicaWM) |
| TLS & Secure Comms | π§ In progress |
| Web browser | π§ CLI-mode only (Sirius) |
To run in QEMU:
sh qemu-system-x86_64 -m 512M -drive format=raw,file=quasarx.img
You can also create a bootable USB image using:
sh dd if=quasarx.img of=/dev/sdX bs=4M status=progress
π License MIT License β For educational and experimental purposes only.
Welcome to QuasarX OS β a handcrafted operating system and kernel project, built from first principles with passion and curiosity.