book/src/development/design/kernel.md

867 B

Microkernel

The core kernel of Mercury will be highly limited, implementing only necessary portions. This allows other functionality to be simply run in userspace.

Additionally, most code should be put into separate libraries then pulled into the kernel code. This will likely be done via git submodules.

Initially, it will be built for RISC-V, then ARM (focused on running in a VM), then on a Raspberry Pi. Afterwards, we can put focus towards building out various features.

Support for multiple targets will be done via Cargo.toml targets, cross-compilation, and conditional compilation.

Boot Process

To be implemented

Memory Management

To-Do

Processes

To-Do