Just a fun project to build an Operating System from fully scratch with rust
Bootloader is written is assembly and Kernel is written in rust
- Multiboot
- Real Mode (16 bits)
- Pagging
- Memory Mapping
- Global Descriptor Table loading
- Protected Mode(x86 32bits)
- Long Mode (x86_64 bits)
- Copy Kernel from disk to Protected Memory
- Stack Mem
-
First You need to download and install Rustup!
-
Go to https://www.rust-lang.org for Rustup!
-
And we need nasm to compile assembly, grub for multiboot grub and qemu to run image.
-
Please install those first.
-
If you're done follow these steps.
First You need to download and install Rustup!
Go to https://www.rust-lang.org for Rustup!
And we need nasm to compile assembly, grub for multiboot grub and qemu to run image.
Please install those first.
If you're done follow these steps.
rustup update nightly
rustup default nightly
rustup target add x86_64-unknown-none
- We use nightly to use unstable features of rust.
- And add x86_64-unknown-none for 64 bits bare metal architecture.
git clone https://github.com/Walker-00/chaos
cd chaos
make build
make run
If you got some issues like header missing or multiboot header missing!
Please run make clean and make build in different shell.
Or If you got any other issues please report me.