Process 进程中的程序计数器

Process 进程中的程序计数器,process,operating-system,program-counter,Process,Operating System,Program Counter,我在理解Tanenbaum《现代操作系统》一书中的这段话时遇到了一些问题: “我们看到四个流程,每个流程都有自己的控制流程(即自己的流程) 逻辑程序计数器),并且每个计数器独立于其他计数器运行。 当然,只有一个物理程序计数器,所以当每个进程运行时, 其逻辑程序计数器加载到实际程序计数器中”。这是文中所示的图表 我遇到的问题是,不是每个进程都有自己的程序计数器?既然每个程序已经是一个单独的正在执行的进程,为什么它需要加载回一个“真实”的程序计数器?我不明白这个真正的程序计数器是从哪里来的 为什么它

我在理解Tanenbaum《现代操作系统》一书中的这段话时遇到了一些问题:

“我们看到四个流程,每个流程都有自己的控制流程(即自己的流程) 逻辑程序计数器),并且每个计数器独立于其他计数器运行。 当然,只有一个物理程序计数器,所以当每个进程运行时, 其逻辑程序计数器加载到实际程序计数器中”。这是文中所示的图表

我遇到的问题是,不是每个进程都有自己的程序计数器?既然每个程序已经是一个单独的正在执行的进程,为什么它需要加载回一个“真实”的程序计数器?我不明白这个真正的程序计数器是从哪里来的

为什么它需要加载回“真实”程序计数器

当Tanenbaum说“实程序计数器”时,他指的是与CPU相关联的单个程序计数器。程序计数器只是另一个CPU寄存器,但它有一个特定的用途,即指向当前正在执行的指令

不是每个进程都有自己的程序计数器吗

每个进程都有自己的程序计数器(PC),但每个处理器核心只有一台PC。因此,当进程在CPU上运行时,内核会将PC寄存器设置为该进程保存的PC。如果进程暂时停止,那么内核会将进程PC从PC寄存器保存到内存中某个定义良好的位置

每个进程都有一些与之相关联的簿记,其中一个是进程的寄存器状态。因此,当前未运行的每个进程都将其PC保存在内存中