
Ich verstehe, dass wenn ich einen Terminalemulator wie öffne xterm
und dann die Prozesse mit aufliste , ich die Ausführung als Prozess ps
sehen kann .xterm
Aber wenn ich Strg+Alt+F# eingebe, erhalte ich ein „Vollbild-Terminal“. Ist dieses „Vollbild-Terminal“ auch ein Prozess? Oder ist es eine vom Kernel bereitgestellte Benutzeroberfläche, ohne ein tatsächlicher Prozess zu sein?
Antwort1
Anders als bei herkömmlichen Terminalemulatoren wird dieses Vollbildterminal nicht von einem Userland-Prozess verwaltet, sondern, wie Sie bereits vermutet haben, vom Kernel bereitgestellt.
SehenVirtuelle Konsole
Antwort2
Wenn ich mich bei Konsole 1 anmelde und „sleep 10000“ eingebe, erstelle ich eine Prozessliste mit:
ps -AHl | grep -B2 sleep
Ich bekomme
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
Das sleep
ist in bash
, ein erwartetes. und bash
ist in login
login
hat eine übergeordnete ID von 1, das ist also alles, was es gibt.
Daraus erkennen wir, dass zwar ein Prozess existiert login
, jedoch kein Prozess für das Terminal.