解析 linux 进程 pid 0, pid 1, pid 2 关系及启动过程

发布时间:2024年01月24日

三个进程的关系
Linux 中有pid 0, pid 1 和 pid 2 三个特殊的进程。

pid 0,即 “swapper” 进程,是 pid 1 和 pid 2 的父进程。
pid 1,即 “init” 进程,所有用户空间的进程均派生自该进程。
pid 2,即 “kthreadd” 进程,是内核空间所有进程的父进程。
除了pid 0为静态生成外,其他进程实际都是调用 do_fork 生成。

$ ps -ef | head -n 3
UID ? ? ? ? ?PID ? ?PPID ?C STIME TTY ? ? ? ? ?TIME CMD
root ? ? ? ? ? 1 ? ? ? 0 ?0 09:20 ? ? ? ? ?00:00:13 /sbin/init auto noprompt
root ? ? ? ? ? 2 ? ? ? 0 ?0 09:20 ? ? ? ? ?00:00:00 [kthreadd]
?

文章来源:https://blog.csdn.net/roshy/article/details/135668306
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。