| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
_____ _ _ _____ _______ __ __
| __ \| | | |/ ____|__ __|\ \ / /
| |__) | | | | (___ | | \ \ / /
| _ /| | | |\___ \ | | \ \/ /
| | \ \| |__| |____) | | | \ /
|_| \_\\____/|_____/ |_| \/
[ RISC-V 64-BIT BARE-METAL KERNEL ]
A minimalist, bare-metal kernel written in Rust for the RISC-V architecture (RV64GC). This project explores low-level systems programming, memory management, and hardware abstraction without a standard library (no_std).
Ensure you have the riscv64gc-unknown-none-elf target installed via rustup.
chmod +x run.sh
./run.shAlternatively, use cargo run if the .cargo/config.toml is configured.
| Feature | Status | Description |
|---|---|---|
| RV64GC ISA | ✅ | Base instructions & Compressed sets |
| UART 16550a | ✅ | Serial communication & Logging |
| Dynamic Allocator | ✅ | Linked List Heap management |
| PLICS/CLINT | 🚧 | Interrupt Controller (Work in Progress) |
| Paging/MMU | 📅 | Planned: Sv39 Virtual Memory |
| Multicore | ❌ | Planned: SMP Bootstrapping |
0x8000_0000 +------------------+
| .text (Kernel) |
+------------------+
| .rodata / .data |
+------------------+
| .bss |
+------------------+
| Stack (16 KiB) |
_heap_start +------------------+
| |
| Dynamic Heap |
| |
0x8800_0000 +------------------+
When you run cargo run, you should see the kernel bootstrapping:
RISC-V Kernel Booting...
Memory Allocator initialized:
Start Address: 0x8000c000
Total Size: 131024 KB
Running heap tests...
Box value: 42 at 0x8000c008
Heap tests passed! Memory freed.Please note: While the core logic and implementation of this code were developed exclusively by me, the comments and documentation provided within the source files were generated with the assistance of an AI. Although they have been carefully reviewed for accuracy, they may still contain errors or inconsistencies.
If you spot any bugs, technical inaccuracies, or have improvements for the documentation, please feel free to open a Pull Request or an issue. Contributions are more than welcome!
| Back | FazBrowse Home | New Git URL |