Installation

Booting the OS in an emulator is the simplest way to test, but installing on real RISC-V hardware is also possible using u-boot or a compatible loader.

Emulation With QEMU

The hardware builds should also run easily in emulators, but a special build is made for QEMU using bootstrapping code from xv6 that doesn’t rely on SBI.

Running normal builds should actually be easier and will be documented later.

TODO: Document running builds for QEMU.

Real Hardware

Compiled kernel images for in-development systems are usually installed by overwriting an existing kernel image on an SD card, and I haven’t developed a process yet for automating this step to install u-boot for the custom OS.

Manual installation can require a little ingenuity but usually just involves finding the boot partition and the kernel file on an SD card formatted to boot for your board, and copying the new file over it (with the same name as the old one).

The system is built with core programs on a RAM-disk (which is then compiled into the kernel file) so it generally only needs a compatible bootloader and the kernel file in order to show some output. You will need serial cables set up as described in the manual for your preferred board.

This approach works well for bringing up the kernel on new boards but will have to be altered for real installations.