nuttx

NuttX on RiscV

Some personal feelings about “NuttX on RiscV”.

Overview

Some high level things in common:

Closer view

RiscV has 4 priledge levels: Machine, Hyperviosr, Supervisor and User. Chips can choose to support:

NuttX has multiple build modes as well:

More specifically we can use NuttX on RiscV as below1:

Build M-mode S-mode U-mode
FLAT Yes Yes  
PROTECTED Kernel Apps
KERNEL SBI2 Yes Apps

Though RiscV wants to be as sucessful as Linux, Linux doesn’t run on many low-end RiscV chips yet. On the other side, NuttX runs on almost all types of RiscV chips, from simple MCUs to multi-core SMP chips with MMU.

Evolving together

NuttX is following RiscV closely. For example, it is the first RTOS supportinng the RV64ILP32 ABI to manage 64-bit AIoT chips in an efficient manner.

If your target system requires Fast booting, Tiny footprint, Tealtime scheduing and Standard compliant programming interface, then NuttX is a good choice. The combination of NuttX and RiscV can create a solid base for your AIoT stack.

Notes

  1. Someone are also doing hypervisor with NuttX, details are unclear yet. 

  2. NuttX can work with standard OpenSBI or a builtin NuttSBI.