OverflowOS is a UEFI-based Operating System with a monolithic Kernel, fully written in Rust. We support the architectures x86_64 and ARM64, and I'm not planning to implement 32-bit support in the future. You can see my planned features in this project. If you have some ideas, just create an Issue.
OSImage
- Command-Line Tool to generate image files for Rust Operating Systems (by Cach30verfl0w)kernel
- The original monolithic Kernel of OverflowOS (by Cach30verfl0w)libgraphics
- LibGraphics is a library to instrument the Graphics Output Protocol for drawing things or writing Text (by Cach30verfl0w)libcpu
- LibCPU is a library to interact with platform-independent and platform-dependant features of the CPU (by Cach30verfl0w)- This library currently only supports the architectures x86 and x86_64, but ARM and RISC-V support is also planned
Here are a few steps to install all dependencies to set up a development environment for OverflowOS.
Debian/Ubuntu
$> sudo apt update -y && sudo apt install -y qemu-system ovmf xorriso
$> git clone https://github.com/Cach30verfl0w/OSImage
$> cd OSImage
$> cargo install --path ./
$> osimage build-image --image-file overflow.img --iso-file overflow.iso
$> osimage run-qemu --iso-file overflow.iso
x86_64-unknown-none
target from phil-opp- VGA Text Mode Tutorial from phil-opp
- Some information from OSDev.org
- Information about GDT and IDT from HackerNoon.com