为什么某些过程控制块拥有许多与线程控制块相同的信息?

时间:2018-10-24 17:23:13

标签: multithreading process kernel

如果每个进程至少有一个线程,那么为什么线程控制块不仅仅保存寄存器和程序计数器。似乎有些内核在进程控制块中也实现了相同的信息似乎是一种浪费。还有其他原因吗?

1 个答案:

答案 0 :(得分:1)

在内核中使用“进程”一词是单线程进程时代以来的遗留问题。通过“进程”,内核实际上意味着内核必须调度的内容。 “内核必须调度的事物”没有简单的词,“过程”一词的使用具有历史意义。

当您看到“过程控制块”时,您真正看到的是内核用来跟踪其计划的内容的结构。这通常包括内核线程,并且包含进程中的每个线程。