20221107 23. X Window 设置介绍
在 Linux 上头的图形接口我们称之为 X Window System,简称为 X 或 X11 啰! 为何称之为系统呢?这是因为 X 窗口系统又分为 X server 与 X client ,既然是 Server/Client (主从架构) 这就表示其实 X 窗口系统是可以跨网络且跨平台的!X 窗口系统对于 Linux 来说仅是一个软件, 只是这个软件日趋重要喔
23.1 什么是 X Window System
23.1.1 X Window 的发展简史
就英文字母来看 X 是在 W(indow) 后面,因此,人们就戏称这一版的窗口接口为 X
-
在 Unix Like 上面的图形使用者接口 (GUI) 被称为 X 或 X11;
-
X11 是一个“软件”而不是一个操作系统;
-
X11 是利用网络架构来进行图形接口的执行与绘制;
-
较著名的 X 版本为 X11R6 这一版,目前大部分的 X 都是这一版演化出来的 (包括X11R7);
-
现在大部分的 distribution 使用的 X 都是由 Xorg 基金会所提供的 X11 软件;
-
X11 使用的是 MIT 授权,为类似 GPL 的开放源代码授权方式。
23.1.2 主要元件: X Server/X Client/Window Manager/Display Manager
X Window system 是个利用网络架构的图形使用者接口软件,基本上是分成 X Server 与 X Client 两个元件
X Server 在管理硬件,而 X Client 则是应用程序。 在运行上,X Client 应用程序会将所想要呈现的画面告知 X Server ,最终由 X server 来将结果通过他所管理的硬件绘制出来
举个例子来说,当我们在 X Window 的画面中,将鼠标向右移动,那他是怎么告知 X Server
与 X Client 的呢? 首先, X server 会侦测到鼠标的移动,但是他不知道应该怎么绘图啊!此
时,他将鼠标的这个动作告知 X Client, X Client 就会去运算,结果得到,嘿嘿!其实要将鼠标指标向右移动几个像素,然后将这个结果告知 X server , 接下来,您就会看到 X Server
将鼠标指标向右移动啰
最大的好处是, X Client 不需要知道 X Server 的硬件配备与操作系统!因为 X Client 单纯就是在处理绘图的数据而已,本身是不绘图的。用户端用的是什么操作系统在 Linux 主机端是不在乎的!
X Window Manager:特殊的 X Client ,负责管理所有的 X client 软件
X client 彼此不知道对方在屏幕的哪个位置啊!为了克服这个问题,因此就有 Window Manager (WM, 窗口管理员) 的产生了。 窗口管理员也是 X client ,只是他主要在负责全部 X client 的控管,还包括提供某些特殊的功能
-
提供许多的控制元素,包括工作列、背景桌面的设置等等;
-
管理虚拟桌面 (virtual desktop);
-
提供窗口控制参数,这包括窗口的大小、窗口的重叠显示、窗口的移动、窗口的最小化等等。
常常听到的 KDE, GNOME, XFCE 还有 twm 等等,都是一些窗口管理员的专
案计划啦! 这些专案计划中,每种窗口管理员所用以开发的显示发动机都不太相同,所著重
的方向也不一样,不是换了桌面与显示效果而已
-
GNOME (GNU Network Object Model Environment):http://www.gnome.org/
-
KDE (K Desktop Enviroment):http://kde.org/
-
twm (Tab Window Manager):http://xwinman.org/vtwm.php
-
XFCE (XForms Common Environment):http://www.xfce.org/
CentOS 默认提供的有 GNOME 与 KDE
举 CentOS 默认的 GNOME 为例好了, 由于我们要在本机端启动 X Window system ,因此,在我们的 CentOS 主机上面必须要有 Xorg 的 X server 核心, 这样才能够提供屏幕的绘制啊~然后为了让窗口管理更方便,于是就加装了 GNOME 这个计划的 window manager , 然后为了让自己的使用更方便,于是就在 GNOME 上面加上更多的窗口应用软件,包括输入法等等的, 最后就建构出我们的 X Window System 啰~ _!所以你也会知道,X server/X client/Window Manager 是同时存在于我们一部 Linux 主机上头的啦!
Display Manager:提供登陆需求
display manager 最大的任务就是提供登陆的环境, 并且载入使用者选择的 Window Manager 与语系等数据
几乎所有的大型窗口管理员专案计划都会提供 display manager 的,在 CentOS 上面我们主
要利用的是 GNOME 的 GNOME Display Manager (gdm) 这支程序来提供 tty1 的图形接口登陆喔!至于登陆后取得的窗口管理员, 则可以在 gdm 上面进行选择的
23.1.3 X Window 的启动流程
略
23.1.4 X 启动流程测试
略
23.1.5 我是否需要启用 X Window System
如果你的 Linux 主机定位为网络服务器的话,不需要
如果 Linux 主机是用来作为你的桌上计算机用的,需要
23.2 X Server 配置文件解析与设置
略
23.3 显卡驱动程序安装范例
略