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

问题描述 投票:-1回答:1

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

operating-system cpu context-switch context-switching
1个回答
0
投票

上下文保存在Process CONTEXT Block中。进程的状态由进程寄存器中的值定义。你的建议是需要为每个过程设置一套单独的寄存器,这会使硬件设计成为一场噩梦。

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

© www.soinside.com 2019 - 2024. All rights reserved.