进程如何工作

系统启动时,内核先把它的一些程序初始化为进程,然后运行一个称为init的程序。init程序将依次运行一系列称为脚本初始化(init script)的shell脚本(放在/etc目录下),这些脚本将会启动所欲的系统服务。其中的很多服务都是通过守护程序(daemon program)来实现的。而后台程序只是待在后台做它们自己的事情,并且没有用户界面。因此,即使没有用户登录,系统也在忙于执行一些例行程序。
一个程序的运行可以触发其它程序的运行,在进程系统中这种情况被表述为父进程创建子进程。
内核会保存每个进程的信息以便确保任务有序进行。比如,每个进程将被分配一个称为进程ID(PID, process ID)的号码。进程ID是按递增的顺序来分配的,init进程的PID始终为1。内核也记录分配给每个进程的内存信息以及用来恢复运行的进程就绪信息。和文件系统类似,进程系统中也存在所有者、用户ID、有效用户ID等。

原文地址:https://www.cnblogs.com/itbsl/p/11040485.html