X-Window的架构(转)

转载 2005年05月23日 16:42:00
 在Unix-Like包括Linux等作业底下的图形界面通常被我们简称为X-Window啰,这个X-Window怎么来的?他目前的版本是怎样?还有,X-Window主要是主从架构的(Server, Client),那么这些主从架构是怎么回事呢?我们底下就来谈一谈这些东西吧!
  ·XFree86 的历史演进与版本
  基本上,X-Window的核心就是 XFree86 这个玩意儿啰,他怎么来的呢?在早期的Unix世界中,并没有所谓的图形界面,所以在一些图形展示上面有点困扰就是了,后来经过麻省理工学院(MIT)的发展,终于在 1986 年开发出在 Unix 系统上面的 X Window System!并且组织了 XFree86 这个计画组织来发展这个图形介面!从此之后,人们才可以在 Unix 作业系统中看到这个美美的图形化介面(Graphical User Interface, 简称GUI)呢!那么这个 XFree86 组织继续发展这个介面,到了 1987 年释出第一版的X11版本,而后陆续发展出更新的版本,在第二版释出被称为X11R2,目前的版本则是第六次释出,称为X11R6啰!而目前的X11R6 版本中,主要依照新旧又被分为较旧的第三版(version 3),以及较新的第四版(version 4)。(注: XFree86 的命名基本上为 X 系统 + Free 软体 + x86 系统架构 的简写啰!)
  那么在 Linux 针对 XFree86 的使用上面情况是怎样呢,呵呵,在 1994 年第一个 Linux kernel 1.0 的版本当中,就已经支援 XFree86 啰!至于目前在 2002 年之后出版的 Linux distribution 通常都已经换为了version 4了,例如 Mandrake 9.0 及Red Hat 7.2以后版本,这一版支援的显示卡驱动程式较多,而且也较新啦!不过,在 2001 年以前的Linux版本则主要还是以 version 3 为主呢!
  ·X server, X client 与 Window manager
  大概了解一下X-Window的历史与版本之后,接着下来我们要来谈一谈,那么什么是X server, X client这些个东西,怎么一个X-Window有这么多的奇怪的介面,什么KDE啦还有GNOME啦等等的!
  oX server:
  基本上,XFree86的主要功能是什么呢?嗯!那就是管理整个Linux主机上面的关于显示的硬体配备啦!例如显示卡、萤幕解析度、键盘形式、滑鼠形式等等,咦!那我们在安装Linux的时候,不是都已经可以将这些资讯设定好了吗?这里必须说明的是,X-Window在Linux里面只是『一个软体』而已,所以,你在安装Linux的时候,选择的键盘也好,滑鼠形式也好,都是给Linux这个系统用的,跟X-Window可没有绝对的关系呢!所以这也就说明啦,你的X-Window要在Linux上面启动时,还需要载入X-Window需要的驱动程式才行!所以呢,当你以run-level 3进入Linux之后,基本上,X-Window是完全不存在你的系统的记忆体中,而当你输入startx以启动X-Window系统时,这个时候 Linux才会开始读入X-Window的驱动程式(大概就是显示卡驱动程式、萤幕解析度调整等等的设定值)。所以,请注意啦,这个X server就是用来管理Linux主要关于显示的一些硬体与驱动程式啰!
  oX client:
  大略知道了X server之后,再来我们要看一看,那么什么是X client呢?又没有网路连线,怎么会有client这个名词?其实,X server主要的功能只是在管理显示的驱动程式与硬体,但是在整个萤幕前面显示给使用者,并且经由使用者移动滑鼠也好、键盘也好,来启动一些『事件』的动作,以回应给X server,并进一步处理一些资讯,则是需要一些X的软体来进行,这些关于X的软体,我们就可以称为是X client啰!反正,只要是关于一些视窗的行为、显示在萤幕的行为等等,使用者都是透过X client来告诉X server的啦!那也就是说,『当X server死掉的时候,X client根本就无法动作!』怎么说呢?因为管理硬体的X server都不动了,利用这个server来进行显示与事件触发的X client要怎么活下去?了解了吗?
  oWindow manager:
  那么什么又是『视窗管理员?』说穿了,其实视窗管理员你也可以简单的将他看做是一个X client啦!这个Window manager主要是做为你跟整个X Window系统的介面,所以,所有的X软体(就是上面讲到的X client)都是他管的!目前最热门的两个视窗管理员就是KDE与GNOME啰!
  如果我们以KDE来作说明,那么您应该不难了解,主要的硬体驱动还是得要X Window的核心,也就是XFree86这个咚咚没有问题的驱动之后,然后我们才能进入KDE这个视窗管理员的介面之下进行美美的图形介面环境工作!万一哪一天您的X-Window死掉了,你必须要知道的是,你是怎么让他死掉的?
  o如果之前还可以进入X-Window,也就是KDE,不过经过当机之后(这里指的是并没有重新设定XFree86喔!),导致X-Window无法进入,那么应该可能就来自于KDE的问题了,这个情况之下,通常删除自己家目录之下的.kde这个隐藏目录后,就可以恢复到最原始的状态。
  o但是如果一安装完Linux就一直无法进入X-Window的话,那么大概就是XFree86这个核心没有设定好的问题啦!所以我们就必须要设定XFree86呢!
  ·XFree86 的主要设定档案
  好啦,既然如果曾经进入过X-Window,则可能的问题就会变成是window manager的问题,而不是XFree86的问题,那么情况应该还容易解决,所以我们不谈这个。我们底下要谈的是当你的X-Window一直无法正确且成功的启动时,那么应该就是硬体设定的问题啦!例如解析度调错啦、滑鼠格式不对啦、显示卡的驱动程式不对等等的问题!果真是这些问题的时候,我要如何来重新设定我的XFree86这个核心呢?
  刚刚前面提过,我们的XFree86目前有两个版本,分别是version 3与version 4,那么怎么知道我的Linux使用的是哪一个XFree86的版本呢?嗯!就使用:
  X –version
  来检查吧!好了,那么不同版本的设定档在哪里?这两个版本的设定档分别是:
  o version 3: /etc/X11/XF86Config
  o version 4: /etc/X11/XF86Config-4
  请特别留意他的大小写呢!上面的可是设定档喔!所以呢,当我们说『我的X-Window一直无法驱动,我要去修改我的设定档!』通常指的就是这个档案啦!目前我们在Linux里面大多是使用version 4了,因此底下我们将以/etc/X11/XF86Config-4这个档案来说明呢!请注意,如果您的X-Window本来可以正确无误的启动时,表示这个档案内容是对的,这个时候,『请务必将您的这个设定档案备份一个!』因为未来如果设定错误导致无法进入X-Window时,只要将原本正确的备份档案覆盖回来,你的X-Window就救回来了!所以这个档案真的很重要,请记得一定要备份喔!
  cp /etc/X11/XF86Config-4 /etc/X11/XF86Config-4.bak
  底下我们就来谈一谈,怎么样设定我们的XFree86呢?一般而言,如果你要重新设定XFree86的一些细项设定时,最好的步骤是:
  3.如果已经能够进入X-Window了,那么就直接以Window manager提供的小工具来设定你的XFree86,例如KDE提供的control center就可以进行这个工作;
  4.如果没有办法进入X-Window了,那么就使用各家distribution提供的小工具来设定我们的XFree86设定档;
  5.如果各家提供的工具还没有办法设定好XFree86的话,那么就必须要使用到XFree86提供的小软体工具,在指令列模式下面执行的xf86cfg或xf86config啰!
  6.如果调整的结果您还是不太满意,那么就直接手动的来微调/etc/X11/XF86Config-4这个档案吧!
  使用设定工具:XFdrake, Xconfigurator:
  好了,如果你的X-Window本来就没有问题,那么底下的资料就可以不要看啦!但是,如果你的X-Window一直怪怪的,那么底下的设定方式就得给他瞧一瞧!目前使用上面较为方便的,还是以各家distribution提供的小工具来设定我们的/etc/X11/XF86Config-4这个档案较为方便,而设定的内容不外乎:
  1.键盘的格式;
  2.滑鼠的格式;
  3.萤幕的格式,包含解析度、水平、垂直更新频率等等;
  4.显示卡的主要驱动程式,也就是所谓的X server最主要的内容啦!
  5.显示的解析度:
  上面那个显示的解析度还得要了解一下,我们在设定萤幕的解析度时,指的是『我的萤幕能够负荷的最高解析度』,而在第五项的显示的解析度,是我们进入X- Window并且使用Window manager来操作主机之后,那个桌面的支援的解析度啦!因此,第三项萤幕的解析度当然就可以设定的比较高啰!

x-window的客户-服务器架构详解

作者:杨硕, 华清远见嵌入式学院讲师。 一.X-Window简介     X-Window(也常称为X11或X)系统是一种以位图方式显示的软件视窗系统,最初是1984年麻省理工学院的研究,之后...

(转)Android display system introduce(Qualcomm 8x60 platform)(一、HW架构)

一、8x60平台显示系统硬件模块讲解上图取自8x60硬件的架构图,都是和显示比较相关的部分,其中最主要的就是MDP,同时为了兼容各种显示接口,8x60又集成了MIPI、HDMI的transmitter...

在window下架构moodle

  • 2014年09月12日 10:53
  • 2.89MB
  • 下载

X window 直接渲染架构

  • 2010年12月06日 21:32
  • 575KB
  • 下载

[1] Window PowerShell DSC 学习系列----DSC的定义和2种架构模式

PowerShell DSC是PowerShell的一部分,是一个新的管理平台,英文全称为,PowerShell Desired Status Configuration,翻译成中文就是理想管理配置状...

X Window架构与启动代码分析

  • 2009年04月22日 09:33
  • 112KB
  • 下载

python3.5.x(linux及window)

  • 2017年10月23日 10:59
  • 42.41MB
  • 下载

Linux体系结构(三): X Window架构

原文地址:http://blog.chinaunix.net/uid-26838492-id-3158065.html 上一节提到如果想要使Linux系统能够开启图形化桌面,需要有X...

python3.6 图行模块 window x64

  • 2017年11月10日 17:26
  • 16.43MB
  • 下载

DK1.9 window x64.exe

  • 2017年11月16日 22:14
  • 373.92MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:X-Window的架构(转)
举报原因:
原因补充:

(最多只允许输入30个字)