从内核的角度来看,Linux中的GLI和CLI有什么区别

时间:2014-09-26 03:43:20

标签: linux user-interface command-line-interface

任何人都可以从开发人员的角度告诉我GLI和CLI之间的区别是什么?

我也想知道linux系统在启动后如何设置GLI和CLI。

对于CLI,当新用户登录时,系统启动后,流程init需要fork,然后为用户调用exec程序getty登录。用户输入用户名和密码后,getty将验证当前登录用户的身份。如果一切正常,getty执行execle加载login程序,然后调用shell。

但是在启动图形桌面时内核会做什么。

非常感谢。

1 个答案:

答案 0 :(得分:1)

根本不是关于内核的。它是关于如何配置init以及启动哪个运行级别的。命令pstree -u是你的朋友。

 ├─mdm───mdm─┬─Xorg
 │           ├─x-session-manag(szg)─┬─applet.py───{applet.py}
 │           │                      ├─gpg-agent
 │           │                      ├─marco───2*[{marco}]
 │           │                      ├─mate-bluetooth-───2*[{mate-bluetooth-}]
 │           │                      ├─mate-panel───2*[{mate-panel}]
 │           │                      ├─mate-power-mana───2*[{mate-power-mana}]
 │           │                      ├─mate-screensave───2*[{mate-screensave}]
 │           │                      ├─mate-settings-d───4*[{mate-settings-d}]
 │           │                      ├─mate-volume-con───{mate-volume-con}
 │           │                      ├─mintupdate-laun───sh───mintUpdate───2*[{mintUpdate}]
 │           │                      ├─nm-applet───2*[{nm-applet}]
 │           │                      ├─notgmail───sleep
 │           │                      ├─polkit-mate-aut───{polkit-mate-aut}
 │           │                      ├─sh───caja───3*[{caja}]
 │           │                      ├─ssh-agent
 │           │                      ├─tapeta───sleep
 │           │                      ├─zeitgeist-datah───3*[{zeitgeist-datah}]
 │           │                      └─3*[{x-session-manag}]
 │           └─{mdm}

您可以在上方看到MATE桌面会话。 init以root身份启动mdm,MATE桌面管理器,然后启动Xorg X服务器来处理硬件和您登录的会话管理器,然后它会删除权限并启动您的用户级桌面服务。

除了getty之外,这不会发生。您仍然可以使用 ctrl - alt - F1 等登录CLI。