有什么区别B / W TCB(螺纹控制块)和PCB(工艺)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了有什么区别B / W TCB(螺纹控制块)和PCB(工艺)相关的知识,希望对你有一定的参考价值。
在Linux内核中使用process control block (PCB)和线程控制块(TCB),以便在委派给它们的CPU上有时间。两者有什么区别?
通常在过程控制块(PCB)中维护哪些信息?
答案
PCB可以包含的一些值得注意的字段是进程ID,进程组ID,父进程和子进程,堆指针,程序计数器,调度状态(运行,就绪,阻塞),权限(允许进程的系统资源)访问),通用寄存器的内容和打开的文件。
TCB有一些与PCB相同的字段(寄存器值,堆栈指针,程序计数器,调度状态),以及一些特定值,如线程id和指向包含该线程的进程的指针。请注意,线程之间没有保护。
在Linux中,有一个struct task_struct,用于存储有关线程或进程的信息。它在 sched.h宣布。
另一答案
PCB存储有关内核进程的信息。像地址空间等...
进程可以包括不同的内核线程。两者都由调度程序和调度程序管理。
TCB包括特定于线程的信息。
另一答案
'过程控制块(PCB)和线程控制块(TCB)都在内核中使用,以便在委派给它们的CPU上有时间' - 通常不是。 PCB将有一个或多个TCB链接到它。 TCB描述执行上下文(例如,堆栈指针),PCB是环境上下文(例如,存储器段和许可)。
以上是关于有什么区别B / W TCB(螺纹控制块)和PCB(工艺)的主要内容,如果未能解决你的问题,请参考以下文章