6、进程与硬件信息探索

进程与硬件信息探索

进程树

在Linux系统中,shell对其所启动的命令进程拥有一定控制权。当按下 Ctrl + C 时,shell能知晓命令的进程ID(PID)并发送信号来终止进程。实际上,从shell启动的所有进程都会成为该shell进程的子进程。而shell本身也是一个子进程,在Linux桌面环境下,它是终端模拟器的子进程;通过SSH远程连接时,它是OpenSSH守护进程的子进程。

所有进程都有一个共同的父进程,所有正在运行的进程关系构成了一棵以PID = 1为根的树。出于历史原因,这个所有进程的父进程常被称为 init 进程。在通用Linux发行版中,很长一段时间里该进程是 System V init 。不过,PID = 1的进程可以是任何可执行文件。在启动Linux系统时,可以指定将哪个可执行文件作为PID = 1加载。例如,在GRUB命令行中添加 init=/bin/bash 可使系统以救援模式启动,但最好使用发行版启动菜单项中的内置救援选项,因为它可能会传递额外的有用参数。

如今,大多数现代发行版使用 systemd 作为服务管理器,也有一些选择其他替代方案,如 OpenRC init 进程是唯一由内核直接启动的进程,其他所有进程,如登录管理器、SSH守护进程、Web服务器、数据库系统等,都是由 init 进程启动的。可以使用 pstree 命令查看完整的进程树,示例如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值