RISC-V SBI and the full boot process

This article is a continuation of a previous one on bare metal programming on RISC-V. This time, the focus is on RISC-V SBI (Supervisor Binary Interface) with OpenSBI as the example. The article explores how SBI can be used to implement operating system kernel primitives and provides a practical example using the riscv64 virt machine. It also discusses the concept of machine modes in RISC-V and the role of SBI as the layer of software that sits at the bottom of the RISC-V software stack, similar to BIOS. The author explains the binary interface between user software and the operating system and highlights the similarities between SBI and ABI (Application Binary Interface). The article concludes with a discussion on how to boot the OS kernel after SBI and the role of the Zero Stage Bootloader (ZSBL) in initializing the system.

https://popovicu.com/posts/risc-v-sbi-and-full-boot-process/

To top