为什么上下文没有保存在过程本身而不是PCB中?

时间:2019-03-02 16:50:56

标签: operating-system cpu context-switch context-switching

我读到,当发生上下文切换时,该特定进程的上下文将保存在进程控制块中。但是我想知道为什么不能在进程本身中保存上下文,因此CPU只需要提醒自己必须恢复哪个进程,而不是将上下文副本复制到PCB。

1 个答案:

答案 0 :(得分:0)

上下文将保存在“进程上下文”块中。进程的状态由进程的寄存器中的值定义。您的建议是每个过程都需要有一组单独的寄存器,这将使硬件设计成为一场噩梦。

CPU仅知道当前正在运行的进程。如果“进程上下文块”位于进程的用户地址空间中,则其值将不可访问。