1. 在 Unix Like 上面的图形用户接口 (GUI) 被称为 X 或 X11

    • X11 是一个『软件』而不是一个操作系统;
    • X11 是利用网络架构来进行图形接口的执行与绘制;
    • 最著名的 X 版本为 X11R6 这一版,目前大部分的 X 都是这一版演化出来的 (包括 X11R7);
    • 现在大部分的 distribution 使用的 X 都是由 Xorg 基金会所提供的 X11 软件;
    • X11 使用的是 MIT 授权,为类似 GPL 的自由软件授权方式
  2. 主要组件: X Server/X Client/Window Manager/Display Manager
    1. X Server:硬件管理、屏幕绘制与提供字型功能:

      • 『每部客户端主机都需要安装 X Server,而服务器端则是提供 X Client 软件,以提供客户端绘图所需要的数据数据』。X Server将来自输入设备 (如键盘、鼠标等) 的动作告知 X Client,硬件的动作是由 X Server 来管理的, 但是 X Server本身并不知道接口设备这些动作会造成什么显示上的效果, 因此 X Server 会将接口设备的这些动作行为告知 X Client ,让 X Client 去伤脑筋。
    2. X Client:负责 X Server 要求的『事件』之处理:
      • X Client 最重要的工作就是处理来自 X Server 的动作,将该动作处理成为绘图数据,再将这些绘图数据传回给 X Server。X client 本身是不知道他在 X Server 当中的位置、大小以及其他相关信息的。X client 彼此不知道对方在屏幕的哪个位置啊!
    3. X Window Manager:特殊的 X Client ,负责管理所有的 X client 软件
      • 提供许多的控制元素,包括任务栏、背景桌面的设定等等
      • 管理虚拟桌面 (virtual desktop);
      • 提供窗口控制参数,这包括窗口的大小、窗口的重迭显示、窗口的移动、窗口的最小化等等。
    4. Display Manager:提供登入需求
      • 在 tty7 的地方有个可以让你使用图形接口登入 (输入账号密码) 的咚咚,其实是个 Display Manager。这个 display manager 最大的任务就是提供登入的环境, 并且加载使用者选择的 Window Manager 与语系等数据喔!
  3. X Window 的启动流程
    • 先启动管理硬件与绘图的 X Server ,然后才加载 X Client
    • 在文字接口启动 X :透过 startx 指令
      1. [root@www ~]# startx [X client 参数] -- [X server 参数]

        • X server 的参数方面:
          1. 使用 startx 后面接的参数;
          2. 若无参数,则找寻用户家目录的档案,亦即 ~/.xserverrc
          3. 若无上述两者,则以 /etc/X11/xinit/xserverrc
          4. 若无上述三者,则单纯执行 /usr/bin/X (此即 X server 执行档)
        • X client 的参数方面:
          1. 使用 startx 后面接的参数
          2. 若无参数,则找寻用户家目录的档案,亦即 ~/.xinitrc
          3. 若无上述两者,则以 /etc/X11/xinit/xinitrc
          4. 若无上述三者,则单纯执行 xterm (此为 X 底下的终端机软件)
      2. 由 startx 呼叫执行的 xinit
        • 事实上,当 startx 找到需要的设定值后,就呼叫 xinit 实际启动 X 的。他的语法是:
        • [root@www ~]# xinit [client option] -- [server or display option]
        • xinit 主要在启动 X server 与加载 X client ,但这个 xinit 所需要的参数则是由 startx 去帮忙找寻的。
  4. X 启动的端口
    • 在 X Window System 的环境下,我们称 port 6000 为第 0 个显示接口,亦即为 hostname:0 , 那个主机名通常可以不写,所以就成了 :0 即可。在预设的情况下,第一个启动的 X (不论是启动在第几个 port number) 是在 tty7 。
  5. X 启动流程测试
    • 1. 先来启动第一个 X 在 :1 画面中

      • [root@www ~]# X :1 &   在tty1下达命令,可以在tty8显示窗口
    • 2. 输入数个可以在 X 当中执行的虚拟终端机
      • [root@www ~]# xterm -display :1 &
      • [root@www ~]# xterm -display :1 &
    • 3. 在输入不同的 X client 观察观察,分别去到 tty8 观察喔!
      • [root@www ~]# xclock -display :1 &
      • [root@www ~]# xeyes -display :1 &
    • 4. 输入可以管理的 window manager
      • [root@www ~]# twm -display :1 & ----------窗口变成有标题可移动的了
    • 5. 将所有刚刚建立的 X 相关工作全部杀掉!
      • [root@www ~]# kill %6
  6. 览析 xorg.conf 设定 ----------鸟哥linux私房菜基础篇 835
    • X server 所使用的字型其实是 XFS 这个服务所提供的,因此没有启动 XFS 服务时,你的 X server 是无法顺利启动
    • [root@www ~]# Xorg :7 -configure
      • 此时 X 会主动的以内建的模块进行系统硬件的探索,并将硬件与字型的侦测结果写入 /root/xorg.conf.new 这个档案里面去,这就是 xorg.conf 的重制结果。
    • [root@www ~]# X -config /root/xorg.conf.new :1 ----测试是否正确
  7. 关于屏幕分辨率与更新率
    1. 屏幕的分辨率应该与显示适配器相关性不高,而是与显示器的更新频率有关!
    2. [root@www ~]# gtf 水平像素 垂直像素 更新频率 [-xv]
      • 水平像素:就是分辨率的 X 轴
      • 垂直像素:就是分辨率的 Y 轴
      • 更新频率:与显示器有关,一般可以选择 60, 75, 80, 85 等频率
      • -x :使用 Xorg 配置文件的模式输出,这是默认值
      • -v :显示侦测的过程
    3. 例:[root@www ~]# gtf 1024 768 75 -x
      • Modeline "1024x768_75.00" 81.80 1024 1080 1192 1360 768 769 772 802 -HSync +Vsync
      • vim /etc/X11/xorg.conf
        • Section "Monitor" 增加以下内容
        • Modeline "1024x768_75.00" 81.80 1024 1080 1192 1360 768 769 772 802 -HSync +Vsync

X Window 设定介绍的更多相关文章

  1. Elasticsearch7.X 入门学习第五课笔记---- - Mapping设定介绍

    原文:Elasticsearch7.X 入门学习第五课笔记---- - Mapping设定介绍 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本 ...

  2. X Window System介绍

    1.概述     X Window System是1984年由麻省理工学院(MIT)和DEC公司共同开发研究的,是执行在UNIX系统上的视窗系统.严格地说,X Window System并非一个软件, ...

  3. 别人的Linux私房菜(24-25)X Window设置介绍、Linux内核编译与管理

    X Window主要组件为:X Server .X Client . Window Manager . Display Manager. X Server管理硬件,X Client则为应用程序,将所需 ...

  4. Window Handle介绍

    HANDLE(句柄)是Windows操作系统中的一个概念.在Windows程序中,有各种各样的资源(窗口.图标.光标等),系统在创建这些资源时会为它们分配内存,并返回标示这些资源的标示号,即句柄.句柄 ...

  5. window.addEventListener介绍说明

    原型 public override function addEventListener(type:String, listener:Function, useCapture:Boolean = fa ...

  6. X Window 程式设计

    X Window 程式设计 转   http://www.cppblog.com/zmj/archive/2007/05/18/24331.html X Window 程式设计 X Window 程式 ...

  7. WPF入门介绍

    Windows Vista已经于2007年1月30正式发行零售版本,安装Vista的计算机将会大量出现.在Vista时代,身为编程员,就一定要具备Vista桌面应用开发的能力.而开发Vista桌面应用 ...

  8. X Window 的奥秘

    大名鼎鼎的 X Window 大家肯定不陌生.都知道它是 Unix/Linux 下面的窗口系统,也都知道它基于 Server/Clinet 架构.在网上随便搜一搜,也可以找到不少 X Window 的 ...

  9. javascript 对象(DOM)document window history

    Javascript对象 目录: window对象 document对象 history对象 navigator对象 window对象 所有浏览器都支持window对象,它表示浏览器窗口. 所有jav ...

随机推荐

  1. 在线程中用 OracleBulkCopy 导至 CPU 百分百

    抓取到的数据, 要批量写数据到 ORACLE , 一开始是用的EF, 处理速度很慢. 主要表现在验证数据上(db.GetValidationErrors), 每分钟才能写 1000条不到. 换成 En ...

  2. java空指针异常 for循环时,使用了值为null的变量

    错误代码: for(Map<String,Object> videoItemMap:learnVideoList){ String videoStuId=MapUtils.getStrin ...

  3. 【python】*与** 参数问题

    可变参数 在Python函数中,还可以定义可变参数.顾名思义,可变参数就是传入的参数个数是可变的,可以是1个.2个到任意个,还可以是0个. 我们以数学题为例子,给定一组数字a,b,c……,请计算a2 ...

  4. perl读取文件

    1)文件读取的3中方法   按行读,存入标量 while (<FILE>) { print; } 按行读,存入数组 @array = <FILE>; 读入整个文件 ,存入标量 ...

  5. Hadoop SequenceFile数据结构介绍及读写

    在一些应用中,我们需要一种特殊的数据结构来存储数据,并进行读取,这里就分析下为什么用SequenceFile格式文件. Hadoop SequenceFile Hadoop提供的SequenceFil ...

  6. Linux命令(21)查看文件的行数

    在 linux 系统中没有在 windows 系统中那么方便的点点鼠标就可以操作文件了,对文件的各种操作都必须使用各种命令来完成.比如有时候我们需要在不查看文件内容的情况下需要知道该文件有多少行.这个 ...

  7. EditText----

    ==============01   editText属性 1.输入法Enter键图标的设置: 软件盘的界面替换只有一个属性android:imeOptions,这个属性的可以取的值有normal,a ...

  8. [HTML] CSS 语法

    CSS 实例 CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明: 选择器通常是您需要改变样式的 HTML 元素. 每条声明由一个属性和一个值组成. 属性(property)是您希望设置的样 ...

  9. 根据 MySQL 状态优化 ---- 1. 慢查询

    查看 MySQL 服务器运行的各种状态值: mysql> show global status: 1. 慢查询 mysql> show variables like '%slow%'; + ...

  10. 删除空文件夹 清除CS扩展名文件 bat

    删除空文件夹.删的干净.删的彻底. 将下列代码复制到txt中保存.并把后缀.txt命成.bat.然后运行即可. 方案1.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...