- Dual Mode
考虑为什么进程 A 的页表指针不能指向进程 B?
因为这会破坏进程间的数据隔离。
那我们该如何在必要时使用这种操作呢?这就要求硬件至少提供两种模式:内核模式和用户模式。
下一个问题是该如何控制两种模式间的过渡和切换?
简单来说,如上图:调用系统调用 syscall,系统调用会支配硬件完成某些工作,然后结束 syscall 返回用户模式。
注意到至少提供两种模式,后续在 Docker 中我们将了解到更多的权限介于二者之间的模式。
1 Like