RISC-V特权级别

特权级别

RISC-V 共有6个特权级别:

机器模式(M模式)

M模式 全称为Machine mode(机器模式) 运行在这个模式下的程序为最高权限,它属于RISC-V 里的最高权限模式,它具有访问所有资源的权限,它的代码是百分百可信的,通常运行在这个模式下的为固件操作系统内核

监管者模式(S模式)

S模式 全称**"Supervisor mode"(监管者模式)**

监管者模式 通常是用来运行操作系统内核 ,它的权限要比M模式低 ,它无法直接操作特殊寄存器某些资源 ,但内核通常会运行在S和M两个模式之间 ,在最初系统启动阶段内核是运行在M模式 下的,在这个模式下内核需要初始化所有的硬件资源 和进行内存管理 等等,当初始化完成之后会切换到S模式 下,通常内核里有一段代码是运行在M模式下和S模式下,M模式下的代码为S模式下的代码提供访问硬件资源 的能力。而S模式下的内核主要是为应用程序提供系统调用 以及上下文切换

虽然说S模式 下可以访问部分硬件 ,但是硬件资源受限 这样会导致内核受到限制 比如MIE (Machine Interrupt Enable)寄存器,这个寄存器负责设置一些安全性较高的中断 ,所以内核里分两部分并运行在不同的模式下。

为什么内核不能全部运行在M模式下?

因为指令集 的不同,在不同的模式 下所对应的指令集不同 ,在RISC-V 里不同的模式下指令集是不同的,不能互相调用,M模式 下的指令集较少编写难度较大 ,所以内核分两部分,运行在M模式下的代码为内核提供访问硬件资源的能力,而S模式下的代码则更加灵活负责上下文调度进程切换系统服务调用驱动管理

除此之外也是为了防止用户态直接切换到M模式 下,这样直接切换到最高级别可能存在一定安全隐患被黑客利用。

用户模式(U模式)

U模式 全称为**"User Model"(用户模式)** 为级别最低 的模式,它不能访问硬件资源 ,只能访问某些通用寄存器通用指令 ,一般用于执行应用程序

HS模式

HS模式 全称**"Hypervisor mode"(虚拟监管者模式)** ,在这个模式下具有和S模式 一样的权限 ,可以访问所有资源 ,在这个模式下VMM 可以不通过宿主机操作系统内核 直接访问硬件资源 ,为虚拟操作系统提供服务

当然S模式 下也可以实现虚拟机 的功能,但需要特定的驱动宿主机操作系统支持

VS模式

VS模式 全称**"Virtual Symmetric Multiprocessing mode"(虚拟对称多处理模式)** ,在这个模式下为VMM 提供多个虚拟处理器 的功能,VMM可以利用这个让每个虚拟处理器 具有S模式的权限。

VU模式

VU模式 全称**"Virtual User mode"(虚拟用户模式)** ,在这个模式下为不同虚拟操作系统虚拟用户态应用程序 提供虚拟内存 支持、特权操作 支持、操作系统隔离虚拟化支持等功能,从而满足不同的应用需求。

Tips

虚拟化VMM 会处于不同的虚拟特权模式 下,简单点来说就是VMM在执行虚拟化操作系统 时会将宿主机的CPU切换 置不同的虚拟特权 模式下,比如执行虚拟操作系统 的部分CPU特权会切换置HS ,而虚拟处理器 功能则为VS 模式,执行虚拟应用程序 时为VU模式。

特权模式的应用场景

一般这些特权模式应用场景如下:

特权 使用场景
1. M模式 嵌入式系统
1. M模式 2. U模式 具有安全特性的嵌入式系统
1. M模式 2. S模式 3. U模式 通用操作系统
1. M模式 2. U模式 3. HS模式 4. VS模式 5. VU模式 虚拟化操作系统
相关推荐
jianqiang.xue2 天前
ESP32-S3 运行 Linux 全指南:从 RISC-V 模拟器移植到 8 秒快速启动
linux·stm32·单片机·mongodb·risc-v·esp32s3
AuroBreeze8 天前
RISC-V: Minimal U-mode implementation
linux·c语言·c++·risc-v
VermouthSp8 天前
RISC-V裸机程序(bare-metal-app)
risc-v
国科安芯9 天前
星载电源遥测模块抗辐照RISC-V MCU的性能适配与应用
单片机·嵌入式硬件·无人机·cocos2d·risc-v
国科安芯14 天前
抗辐照MCU在高空长航时无人机热管理系统中的可靠性研究
单片机·嵌入式硬件·架构·无人机·cocos2d·risc-v
开开心心就好1 个月前
内存清理软件灵活设置,自动阈值快捷键清
运维·服务器·windows·pdf·harmonyos·risc-v·1024程序员节
国科安芯1 个月前
基于RISC-V架构的抗辐照MCU在空间EDFA控制单元中的可靠性分析
单片机·嵌入式硬件·性能优化·架构·risc-v·安全性测试
国科安芯1 个月前
空间站机械臂中MCU与CANFD抗辐照芯片的集成研究
单片机·嵌入式硬件·fpga开发·架构·risc-v
信创天地1 个月前
国产化分布式服务框架双雄:Dubbo与Spring Cloud Alibaba 服务调用解决方案全解析
人工智能·系统架构·开源·dubbo·运维开发·risc-v