SBI (Supervisor Binary Interface) is an interface between the Supervisor Execution Environment (SEE) and the supervisor. It allows the supervisor to execute some privileged operations by using the ecall instruction. Examples of SEE and supervisor are: M-Mode and S-Mode on Unix-class platforms, where SBI is the only interface between them, as well as the Hypervisor extended-Supervisor (HS) and Virtualized Supervisor (VS).
Discussion of SBI occurs on the RISC-V Unix Platform Mailing list. It is publicly readable but posting requires being a member of the RISC-V Foundation. Any new SBI extension needs to be discussed and approved there before being merged.
OpenSBI is the reference implementation, but other implementations exist; see section "SBI Implementation IDs".
The files in this repository are licensed under the Creative Commons Attribution 4.0 International License (CC-BY 4.0). The full license text is available at https://creativecommons.org/licenses/by/4.0/.
The final specification in form of PDF and HTML can be generated using
make
command. The makefile
internally uses asciidoctor so the packages
required by the makefile
need to be installed on the build system using
make install-debs
or make install-rpms
.