本文主要是介绍RISC-V (十二)系统调用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
系统模式:用户态和内核态
当前的代码都是实现在machine模式下。

系统模式的切换
epc寄存器的值存放的是ecall指本身的地址 。

用ecall指令

系统调用的执行流程
mret这条指令会利用status的mpp值恢复到之前的特权级别。


蓝色的线表示涉及到权限切换。
系统调用的传参

系统调用的封装

这篇关于RISC-V (十二)系统调用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!