在RISC-V特权架构V1.11或版本1.12的草案中,为用户级中断引入了“N”扩展,实现此扩展的硬件可以将控制权直接转移到用户级陷阱处理程序,而无需调用外部执行环境.
但是 N 扩展有镜像的 CSR 和指令,对于仅支持 M 和 U 模式的系统,两者保存和恢复类似的中断上下文,那么为什么引入 N 扩展以及我们能得到什么好处?
我发现这篇论文用户模式中断 - 嵌入式系统的必备条件可能很有趣。我浏览了一下,它非常模糊,写得也不是很好,但动机似乎是安全性——将异常/中断处理排除在内核之外。类似于 FUSE 将文件系统代码保留在内核之外的方式。我不确定我是否过于相信这一点。 规格说:
在Unix环境下使用时,用户级中断会 可能不会取代传统的信号处理,但可以用作 生成用户级进一步扩展的构建块 垃圾收集障碍、整数溢出等事件 浮点陷阱。
更多我再次不确定这一点。中断是一种非常可怕的(但有时是必要的)抢占机制。我不知道你为什么想要
。 当
2021 年从 ISA 手册中删除邮件列表上的时代精神是,如果要采用类似 N 的东西 (对于裸 S 模式无法满足的目的),它可能需要 重新设计。扩展状态页面它目前根本没有列在