我刚在Silberschatz的“操作系统概念”中读到这段话(第18页):
引入了一个叫做“模式位”的比特,被添加到计算机硬件中以指示当前模式:内核(0)或用户(1)。通过这个模式位,我们能够区分代表操作系统执行的任务和代表用户执行的任务。
那么,该模式位存储在哪里呢?
(它是CPU中的寄存器吗?你能读取该模式位吗?据我所知,CPU必须能够读取该模式位。它如何知道哪个程序会获得模式位0?是否具有特殊地址的程序获取模式位0?谁设置模式位/如何设置?)
引入了一个叫做“模式位”的比特,被添加到计算机硬件中以指示当前模式:内核(0)或用户(1)。通过这个模式位,我们能够区分代表操作系统执行的任务和代表用户执行的任务。
那么,该模式位存储在哪里呢?
(它是CPU中的寄存器吗?你能读取该模式位吗?据我所知,CPU必须能够读取该模式位。它如何知道哪个程序会获得模式位0?是否具有特殊地址的程序获取模式位0?谁设置模式位/如何设置?)