RISC-V给出一种具体安排
RISC-V特权规范定义用户U、监督S和机器M三种基本级别,其中M是必需级别,U和S用于支持不同复杂度的软件栈。常见安排把应用放在U模式,操作系统放在S模式,并由更底层环境承担M模式工作。
并非每个实现都具备相同模式组合。只有M模式的简单系统,与具备用户隔离和监督环境的平台提供不同保护能力;不能把一个架构的名称或数值布局写成所有处理器的统一规则。
参考:[1]
转换必须经过规定路径
系统调用或事件触发的陷入,使执行转向预先安排的处理程序;返回机制再恢复合适的执行位置与模式。应用不能自由挑选一个内核地址,便绕过入口检查取得服务。
模式与软件角色也不总是一一对应。虚拟化环境可以让为监督级编写的系统运行在受限模式,并由更高层捕获或模拟操作。解释权限时,应同时说明代码期望的接口和实际承载它的执行环境。