An operating system and kernel developed with the Rust programming language.
- QEMU (for running and testing the kernel)
rustup
cc
(probably already available on your system)mke2fs
for now
With those installed, you can simply run cargo build
to build an image.
If you also have QEMU installed, cargo run
and cargo test
also will work.
- Heap
- Syscalls
- Drivers
- PCI driver
- IDE driver (no ATA)
- VGA
- xHCI
- USB
- NVMe
- Networking
- Virtual File System with EXT2 implementation
- Preemptive multitasking (processes & threads)
- Interactive shell
- Test framework
To run the kernel in QEMU
cargo run
To run tests with QEMU, run
cargo test
This will run kernel unit tests, as well as all test_kernels
.
To debug the kernel in QEMU, run
cargo run -- --debug
and then connect to the QEMU instance with lldb
:
lldb -s debug.lldb