x window 简介

26
河河河河河河河河河河河河河 Linux 河河 河河河河Linux 河河 X window 河河 西

Upload: penn

Post on 06-Jan-2016

169 views

Category:

Documents


9 download

DESCRIPTION

X window 简介. 刘西洋. 大纲. 简单介绍 X 组成部分 工作原理 主要文件 从头搭建一个 X. 1 简单介绍. X Window ,即 X Window 图形用户接口。 She is not a software, but a protocol. She define what is X , how can be X. X Window 采用 C/S 模型 X Window 独立,不与任何 OS 相关 X Window 主要组成部分有: XServer :实现之一: Xorg XClient :所有使用图形界面的应用程序。 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: X window  简介

河南宏力集团网络管理部内部 Linux培训

第二部分: Linux桌面

X window 简介

刘西洋

Page 2: X window  简介

大纲简单介绍X 组成部分工作原理主要文件从头搭建一个 X

Page 3: X window  简介

1 简单介绍X Window ,即 X Window 图形用户接口。She is not a software, but a protocol. She

define what is X , how can be X.X Window 采用 C/S 模型X Window 独立,不与任何 OS 相关X Window 主要组成部分有:

XServer :实现之一: Xorg XClient :所有使用图形界面的应用程序。 XCharnel :例如, TCP/IP , DECnet

Page 4: X window  简介

目前依据 X 的实现体中,以 X Org 最为普遍且最受欢迎。

X Org 所用的协议版本, X11 ,是在 1987年 9 月所发布。而今最新的参考实现(参考性、示范性的实现体)版本则是 X11 Release 7.5 (简称: X11R7.5 )

此项目由 X Org 基金会所领导,且是以MIT 授权和相似的授权许可的自由软件。

Page 5: X window  简介

2.1 X ServerX Server 是一个显示管理进程,必须运行在一

个有图形显示能力的电脑上。2.2 X Client

X Client ,任何使用 X Server 显示其资料的程序。

2.3 X CharnelX Charnel 即 X Protocol ,采用现有主要协议

进行通信,比如, IPC 或 TCP/IP

2 X Window 组成部分

Page 6: X window  简介

2.1 X Server

Server 是控制显示器和输入设备的软件。Server 可以创建视窗,在视窗中画图形和文

字,回应 Client 程序的 requests ,但它不会自己动作,只有在 Client 程序提出需求后才完成动作。

一台电脑上可同时运行多个 X 服务器,每个 X 服务器能管理多个与之相连的显示设备。

X Server 实现有 Xorg 。

Page 7: X window  简介

2.2 X Client

Client 是使用系统视窗功能的一些应用程序。它是Server 的客户,要求 Server 回应它的请求,完成特定的动作。 X Server 是硬件的控制者, X 客户只是单纯的执行程序,只能使用 X 服务器提供的服务进行输入输出。 X Client 要显示图形图像,但它不能直接控制显示硬件,

只能使用用户面前的 X Server 提供的显示资源。 X Client 要接受用户输入,它不能直接控制键盘鼠标,

也只能使用 X Server 来接受输入。 可运行在与 X Server 相同或不同的电脑上。

Page 8: X window  简介

2.3 X Charnel

Server 和 Client 之间传输信息的通道。凭借这个通道, Client 传送 requests 给 Server 。而Server 回传 status 及其他一些信息给 Client 。

Server 和 Client 的通信大致有两类:Server 和 Client 在同一台机器上执行,它们可以

共同使用 OS 上任何可用的通信方法Client 和 Server 在不同机器上运行。两者信息交

换须通过彼此都遵守的网络协议进行,最常用的协议为 TCP/IP 。

Page 9: X window  简介

3. X Window 架构图和运行原理

Kernel

Shell

X Server

Window Manager

X ClientNO. 1

X ClientNO.2

Kernel

Shell

X ClientNO. 4

X ClientNO.5

Hardware Hardware网线

带有 X Window 的电脑

没有 X Window 的电脑

点一下鼠标发生了什么敲一条显示命令又发生了什么?

Page 10: X window  简介

在图例中, X 服务器从键盘鼠标获取输入内容,之后将输入显示到屏幕,而网页浏览器机终端机模拟器则在用户端的本机系统上执行。此外,用户端也通过网络与远端的机器、服务器保持联系,以保持信息状态的更新。如此的机制及架构能是远端执行的应用如同在本机执行一样。

Page 11: X window  简介

4. 主要的文件

查找命令 locate X11 | more/etc/X11 : X 配置文件/usr/bin/X , Xorg : X Server 可执行文件。/usr/include/X11 : X开发所需的头文件。/usr/lib/X11 : X库文件。/usr/share/X11 : X11 locale , xkb 和 fonts 。/var/log/Xorg.[1-9].log : Xorg 分等级日志

Page 12: X window  简介

4.1 Xorg配置文件X Server 出故障时一般都是配置文件错误,

所以安装完成系统,进入到桌面环境之后,备份一下 Xorg配置文件是一个很好的习惯。

在安装时如果没有设置 X Window 系统,之后必须先行设置鼠标、键盘、显示器以及显示卡等,这样才能成功启用 X Window 系统,而这些设置都记录在 /etc/X11/xorg.conf文件中。这个文件的重要性可见一斑。

Page 13: X window  简介

xorg.conf 由数个 Section/EndSection 的区块组成,每个区块的格式如下:Section “Section name"

Option “value"Option "value"option “value"…

EndSection

4.1.1 xorg.conf 文件格式

Page 14: X window  简介

4.1.2 Section “ServerLayout”

ServerLayout 定义 X Server启动时外观,包含多个 ServerLayout 时,默认使用第一个。

Section "ServerLayout"  Identifier    “Default Layout” # 标识  Screen        “Default Screen“ # 显示  InputDevice   “Generic Keyboard“ # 键盘输入  InputDevice   “Configured Mouse“ # 鼠标输入  InputDevice   "stylus" "SendCoreEvents"  InputDevice   "cursor" "SendCoreEvents"  InputDevice   "eraser" "SendCoreEvents" EndSection

Page 15: X window  简介

4.1.3 Section “Files”

Section "Files"  FontPath   "/usr/share/X11/fonts/misc"  FontPath   "/usr/share/X11/fonts/cyrillic“  FontPath  "/usr/share/X11/fonts/Type1“  FontPath  "/usr/share/X11/fonts/100dpi"  FontPath  "/usr/share/X11/fonts/75dpi“ …… EndSection  RgbPath : RGB数据库的路径。这个文件定义在 X 中所有有效颜色

的名称,并且指定数值。  FontPath :设置 X Server寻找字体时的路径。可以同时使用多个路径,

但需用逗号隔开。

Page 16: X window  简介

4.1.4 Section “Module”

Section "Module"    Load    “i2c“ #加载模块,包括硬件驱动,字体库等    Load    "bitmap"    Load    "ddc"    Load    "dri"    Load    "extmod"    Load    "freetype"    Load    "glx"    Load    "int10"    Load    "type1"    Load    "vbe" EndSection

Page 17: X window  简介

4.1.5 Section “InputDevice”

InputDevice 用于设置鼠标或键盘等输入设备,一般至少存在两个 InputDevice Section 。

Section "InputDevice“ Identifier “Generic Keyboard“ # 标识 Driver   “kbd“ #驱动 Option   “CoreKeyboard“ 附加选项 Option   "XkbRules"   "xorg“ Option   "XkbModel"   "pc105“ Option   "XkbLayout"  "us“ Option   "XkbOptions" "lv3: ralt_switch“ EndSection

Page 18: X window  简介

Section "InputDevice"    Identifier   "Configured Mouse"    Driver   "mouse"    Option   "CorePointer"    Option   "Device“     "/dev/input/mice"    Option   "Protocol“   "ExplorerPS/2"    Option   "ZAxisMapping“     "4 5"    Option   "Emulate3Buttons”  "true" EndSection  Identifier :设置设备的名称。设备名称后面加上一个数字以区分多个

设备。比如两个键盘时,会有一个键盘的 Identifier 为 Keyboard0 。 在大多数的 InputDevice Section 中,有为数不等的以“ Option” 为首

的选项,并且包含特定的选项值。以供设置。 Option 选项名和选项取值可以在 man手册中查得到。

Page 19: X window  简介

4.1.6 Section “Monitor”

Monitor 设置系统使用的显示器类型 Section "Monitor" Identifier "Monitor0" # 标识 VendorName "Monitor Vendor" # 显示器制造商 ModelName "Monitor Model“ # 显示器类型    Option        “DPMS“ # 能源之星支持    HorizSync     37-107 #竖直刷新频率 Hz    VertRefresh   48-120 #水平刷新频率 Hz EndSection

Page 20: X window  简介

4.1.7 Section “Device”

Device 显示卡的信息内容,至少包含一个以上的 Device Section 。

Section "Device“ Identifier  ”card0“ # 显卡唯一标识 VendorName “card’s vendor“ # 显卡厂商 BoardName “card’s mode“ # 显卡型号 Driver      “vmware“ # 显卡驱动 BusID    “PCI:0:15:0“ #总线地址

EndSection

Page 21: X window  简介

4.1.8 Section “Screen”

Screen合并引用 Device 和 Monitor 的部分,以便能够形成成对的设置内容。

Section "Screen"    Identifier “Screen0“ # 屏幕唯一标示    Device “card0 “ # 使用的显卡    Monitor “ Monitor0“ # 使用的监视器    DefaultDepth 24 #默认色深   SubSection “Display“ # 显示模式定义       Depth 24 #色深       Modes “1024×768” “800×600” # 此色深允许的解析率    EndSubSection EndSection

Page 22: X window  简介

4.2 各 Section 关系Module 和 Files 定义文件位置和加载的驱动Monitor , Device 和 InputDevice 定义各设

备的设备驱动和工作参数Screen 组合显卡和显示器,定义显示模式。

以成输出设备,即屏幕。ServerLayout 组合输入设备和输出设备以构

成 X Server

Page 23: X window  简介

4.3 /usr/bin/Xorg 命令Xorg , X Server 可执行文件。典型用法为:

# Xorg –configure

X11 程序将尝试自动探测系统中的图形硬件,并将探测到的硬件信息写入到工作目录下一个叫做 xorg.conf.new 的配置文件。

# Xorg -config xorg.conf.new

测试现存的配置文件, » Xorg 7.4 和更高的版本开始, 这个测试将显示出一个黑色的屏

幕,可以通过 retro 选项使用旧的模式: # Xorg -config xorg.conf.new –retro 如果看到黑灰的格子以及 X 型鼠标指针, 就表示配置成功了。

退出测试, 切换到启动 X 的 vty 之后按 Ctrl+C 。

Page 24: X window  简介

5 CentOS 手动安装 X window

yum grouplist yum -y groupinstall “X Window System” yum -y groupinstall “Desktop” yum -y groupinstall “KDE Desktop” yum -y groupinstall “chinese support” vi /etc/sysconfig/i18n

LANG="zh_CN.UTF-8"

vi /etc/inittab id:3:initdefault:

startx

Page 25: X window  简介

启动 X图形界面的方法1 、 startx2 、设置开机自动启动,修改 /etc/inittab            id:3:initdefault:      ------>      id:5:initdefault:3 、 init 5

默认桌面环境选择 一、设置 GNOME 或者 KDE 为默认的启动桌面环境  方法 1 :修改 /etc/sysconfig/desktop ,根据需要将“ DESKTOP”后面的参数设置为 KDE 或 GNOME 。 方法 2 :在当前用户目录下建立“ .xinitrc” 这个文件,文件的内容就一行 startkde 或 gnome-session 。二、 GNOME 和 KDE 的切换 1 、如果需要切换到 GNOME : #switchdesk gnome 2 、如果需要切换到 KDE : #switchdesk kde #startkde

Page 26: X window  简介

6 参考引用X11,xorg.conf配置详解

http://www.linuxsky.org/doc/admin/200712/198.html

Xorg ( 简体中文 ) https://wiki.archlinux.org/index.php/Xorg_(%E7%AE%80%E4%BD

%93%E4%B8%AD%E6%96%87)

FreeBSD 使用手册第 5章 X Window 系统 http://www.freebsd.org/doc/zh_CN/books/handbook/x-config.html

X 服务器配置指南 http://www.gentoo.org/doc/zh_cn/xorg-config.xml