PixieOS is a minimal operating system kernel written in Rust. This project aims to create a basic OS from scratch, demonstrating low-level programming concepts and Rust's capabilities in systems programming.
- Bare-metal Rust implementation
- Custom target specification for x86_64 architecture
- VGA text mode output
- Panic handler implementation
To build and run PixieOS, you need:
- Rust nightly toolchain
cargo-bootimagefor creating bootable disk images- QEMU for running the OS (optional, but recommended for testing)
-
Install the Rust nightly toolchain:
rustup override set nightly -
Install
cargo-bootimage:cargo install bootimage -
Install QEMU (if not already installed)
To build the project, run:
cargo buildTo create a bootable image and run it in QEMU, use:
cargo runsrc/main.rs: Contains the kernel entry point and basic VGA buffer outputCargo.toml: Rust package manifestrust-toolchain: Specifies the Rust toolchain version.cargo/config.toml: Cargo configuration for custom target and runnerx86_64-pixie_os.json: Custom target specification for x86_64
Contributions to PixieOS are welcome! Please feel free to submit pull requests, create issues or suggest improvements.
MIT
Wbert Adrian Castro Vera dobleuber@gmail.com