Titanos is an exercise in writing a kernel in Rust programming language.
Immediate goal is to complete basic functionality targeting ARMv8 (aarch64) and Vexpress board emulated by Qemu as a testing platform.
Everything is developed under Linux.
See status page for project status.
Follow .travis.yml to understand how to set up toolchain and external requirements.
makebuilds everythingmake runto start the kernel inside Qemumake debugto start the kernel inside Qemu waiting for GDB connectionmake gdbto connect to Qemu instance started bymake debugmake objdumpto dump assembler from the binary
To build in release mode, use export RELEASE=1.
Components:
src/: source codert/: basic C/ASM runtime- titanium.rs: Titanos is based on this collection of low-level macros, functions and constants that can be reused by other software targeting bare-metal development in Rust.
- arm_pl011.rs - Titanium.rs based PL011 uart driver.