【发布时间】:2018-06-20 04:01:07
【问题描述】:
我正在阅读 cpu protection rings 和 system call 工作。但这让我想到了一个不同的问题。如果我不(即用户程序)不使用内核 API 调用(系统调用),并且如果可能的话,将所有内容写入汇编并执行它会怎样。如果用户程序有一些不一致的代码,CPU 不能执行它们,否则系统可能会崩溃。但是在什么时候 CPU 意识到不能执行特定的instruction xyzw?保护级别如何在这里发挥关键作用?底层 ISA 是否为每条指令预定义了特权级别?
谢谢。
【问题讨论】:
-
如果您尝试访问地址 X,则必须使用页表对其进行转换。在那里检查您是否有权访问该位置以及哪些权限。
标签: operating-system system-calls