axle is a hobby microkernel and userspace built around message-passing. Everything used within axle is implemented from the ground up, from the bootloader, to the window manager, to the assembler. axle runs on bare metal. axle provides a desktop environment via an efficient compositor and a homegrown GUI toolkit library.
- Compositing window manager with animations, alpha blending, and window clipping
- TCP/IP stack
- HTML/CSS rendering engine
- Home-grown x86_64 ELF assembler
- Userspace games like Snake, Breakout, DOOM (ported), and 2048
- Userspace applications like a web browser supporting HTTP
- MLFQ scheduler
- GUI toolkit
- Rust support
- Crash reporting
- Message-based IPC
- Driver interface
- ELF loader
- RTL8139 driver
- AHCI driver
- Task visualizer
- Newlib port
- Many supporting features (paging, ring3, syscalls, PCI, etc.)
Circles | Rectangles | Triangles |
---|---|---|
Julia set | Mandelbrot set |
---|---|
axle's Github CI action serves as documentation for setting up an environment from scratch. axle uses QEMU as its standard emulator and runs on the real hardware I've tested.
MIT License