进程控制块、Linux中的进程描述符和任务结构?

进程控制块、Linux中的进程描述符和任务结构?,linux,process,linux-kernel,Linux,Process,Linux Kernel,我很难理解Linux中进程控制块和进程描述符之间的区别 我已经看到这两种结构都被称为任务_struct,而且这些术语似乎可以互换使用-两者之间的区别是什么 非常感谢你的帮助 在Linux内核开发中,这些术语(“进程控制块”或“进程描述符”)都不被视为“艺术术语”。当然,没有正式的Linux内核术语表,所以人们可以自由地调用对他们有意义的东西 然而,与此相反,task_struct是一种特定的C结构,linux内核使用它来维护任务的状态。Linux中的任务大致相当于一个线程 每个用户进程至少有一个

我很难理解Linux中进程控制块和进程描述符之间的区别

我已经看到这两种结构都被称为
任务_struct
,而且这些术语似乎可以互换使用-两者之间的区别是什么

非常感谢你的帮助

在Linux内核开发中,这些术语(“进程控制块”或“进程描述符”)都不被视为“艺术术语”。当然,没有正式的Linux内核术语表,所以人们可以自由地调用对他们有意义的东西

然而,与此相反,
task_struct
是一种特定的C结构,linux内核使用它来维护任务的状态。Linux中的任务大致相当于一个线程

每个用户进程至少有一个线程,因此每个进程都映射到一个或多个任务结构。更具体地说,进程是碰巧共享某些资源的一个或多个任务——文件描述符、地址空间/内存映射、信号处理、进程和进程组ID等。进程中的每个线程都有自己的特定其他资源版本:寄存器/执行上下文、调度参数等等

一个进程只有一个线程是很常见的。在这种情况下,您可以考虑一个进程用单个<代码> TaskjStult表示。