Process Table 和 UNIX 中的 Job Queue 一样吗?
Is Process Table the same thing as the Job Queue in UNIX?
作为一名正在学习操作系统的学生,我了解到在内核space中有一个名为“Process Table”的数据结构,它维护了有关进程的所有信息。
后来讲到调度的时候,听说所有进入系统的进程都会先被放入一个叫做“Job Queue”的数据结构中,这个数据结构好像也维护着一般的信息进程。
这让我想到,这里的“Process Table”和“Job Queue”是一样的吗?也许这是一个微不足道的问题,只是想确保我理解正确。我知道我可能需要查看 Linux 内核源代码才能解决这个问题,但是谁能给我一些快速的见解?
Is Process Table the same thing as the Job Queue in UNIX?
不,它们不一样。
阅读this textbook about operating systems; and the wikipage on processes。
Linux OS 大部分是开源的。您可以下载 (here) and study its source code, and look inside the source code of GNU bash or GNU make to understand better how syscalls(2) are used. You could also play with strace(1).
另请参阅 kernelnewbies and OSDEV 网站。
当然,内核有很多数据结构(以及数百万行源代码)。阅读有关 kernel scheduler.
的更多信息
作为一名正在学习操作系统的学生,我了解到在内核space中有一个名为“Process Table”的数据结构,它维护了有关进程的所有信息。
后来讲到调度的时候,听说所有进入系统的进程都会先被放入一个叫做“Job Queue”的数据结构中,这个数据结构好像也维护着一般的信息进程。
这让我想到,这里的“Process Table”和“Job Queue”是一样的吗?也许这是一个微不足道的问题,只是想确保我理解正确。我知道我可能需要查看 Linux 内核源代码才能解决这个问题,但是谁能给我一些快速的见解?
Is Process Table the same thing as the Job Queue in UNIX?
不,它们不一样。
阅读this textbook about operating systems; and the wikipage on processes。
Linux OS 大部分是开源的。您可以下载 (here) and study its source code, and look inside the source code of GNU bash or GNU make to understand better how syscalls(2) are used. You could also play with strace(1).
另请参阅 kernelnewbies and OSDEV 网站。
当然,内核有很多数据结构(以及数百万行源代码)。阅读有关 kernel scheduler.
的更多信息