当一个进程在执行时,PCB 的内容(在内核内存空间?)被加载到 CPU 寄存器、状态寄存器、内核堆栈指针、用户堆栈指针等。
当上下文切换到另一个进程时,当前的“上下文”存储回 PCB 中,并切换到新的 PCB。
现在当内核想要把这个 PCB 带回“上下文”时,它如何找到现在在内存中的这个 PCB?哪些信息可以帮助内核找到内存中的 PCB?
最佳答案
查找处理器可用性是 schedular 的工作,然后只发生上下文切换。一旦内核可用,内核中存储的 PCB 的程序计数器值就会被获取并提供给 CPU 寄存器。我想告诉 PCB 由内核以堆栈方式存储。
关于operating-system - 存储和检索进程控制 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9876323/