据我所知,当我打开像 之类的终端模拟器xterm
,然后使用 列出进程时ps
,我可以看到xterm
作为进程运行。
但是当我输入Ctrl+Alt+F#时,我得到一个“全屏终端”,这个“全屏终端”也是一个进程吗?或者它是内核提供的 UI,而不是实际的进程?
答案1
与常规终端模拟器不同,这个全屏终端不是由用户态进程处理的,而是由内核提供的。
答案2
如果我登录到控制台 1 并输入 sleep 10000,然后使用以下命令执行进程列表:
ps -AHl | grep -B2 sleep
我明白了
4 S 0 4002 1 0 80 0 - 18473 - tty1 00:00:00 login
4 S 1000 23312 4002 0 80 0 - 8235 - tty1 00:00:00 bash
0 S 1000 23360 23312 0 80 0 - 1452 - tty1 00:00:00 sleep
位于sleep
中bash
,是预期的。并且bash
is in 的login
login
父 ID 为 1,所以这就是全部。
从这里我们看到有一个进程login
,但没有终端进程。