Derek Core

This is a personal project for learning Rust and kernel implementation.

We want to firstly create a simple monolithic kernel and then build from there. Maybe add more features and optimisations, or refactor it into a micro-kernel...

Build

Prerequisite

Checkout the prerequisite for building XV6, it's quite similar.

Start the kernel

make qemu

Debug the kernel

make qemu-gdb

And then connect gdb to remote server at port 1234.

Debugging in IDEs

  • vscode: checkout the template in .vscode/launch.json.
  • CLion: checkout this stackoverflow post

References

Currently, we've borrowed and modified code and ideas from variaous project and blogs to make it work. We will rewrite some of them in the future.

Open Source Projects

Kernels written in C

Kernels written in Rust

Documentations and Blogs

Books