免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1154 | 回复: 0
打印 上一主题 下一主题

X Window介绍 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-04-25 15:41 |只看该作者 |倒序浏览
X Window是与支持图形用户接口的Unix一起使用的系统。“图形用户接口或GUI”可使你不仅使用键盘,
而且也可使用鼠标或其它种类的指标装置来控制计算机。不仅可用鼠标器在菜单上选择条目和控制屏幕上的目标,而且可以同时在多个窗口,运行多个程序,每个程
序都可以驻留在各自的屏幕窗口上。
为了向研制图形用途的程序员提供标准的工具集,和提供用户与图形用途相匹配的标准接口,研制了X Window。为了方便起见,X Window通常叫作X。
当使用X时,保持所有运行中程序GUI的细节,由一个称作“显示服务器”或“X服务器”的独立程序进行处理。
这样分工有几个重要的好处。首先表示整个GUI 由一个单独的程序控制,这个程序可确保每一步操作都按照预定方式执行,正在运行程序的窗口实际上可以被其它窗口所遮盖的,程序本身并不需要知道这一点,你也不必专门在意这一点。X服务器自己将处理这些细节。
第二,当程序员设计一个新程序时,他不必耽忧用户接口,每当需要设计新程序时,只需以标准方式将程序调到X上。 这样有利于使用更可靠的程序,从一个X系统移到另一个X系统。由于所有的X 服务器功能相同,因此,根据一个X服务器写的程序可以在所有的X系统下运行。
X的第三个好处是图形用户接口基本是标准的。 提供窗口接口的系统叫作“窗口管理者”(从技术上讲,窗口管理者本身就是在X中第一层程序) 。
怎样参加一个讨论组。各种专题的讨论组,在 Internet中构成了一个巨大的网络,通过电子邮件,可以把你带入这个巨大的网络。参加一个讨论组,你无须使用“Usenet”或任何其它Internet 网络上的服务,而仅须知道怎样发送和收阅电子邮件
象所有成功的Internet服务一样,邮政名单(Mailing Lists) 基于下面这个简单的想法。当你给某人发一封邮件,你必须指定一个邮件地址;如果你想给几个人同呈一个邮件,你可以建立一个专用名——我们称为别名,来代表一组人。
例如,如果你建立一个叫“executives”的别名表示Curly、Larry和 Moe三个人的邮件地址,那么当你给“executives”发邮件, 电子邮件程序会自动将此邮件发给这三个用户。

象怎样使这三个人通过这个别名成为一个讨论组呢 ? 也就是如果 Curly 有一个想法, 想与其他两人共享, 那么他要做的就是给:“
executives”发一个电子邮件,而且每个人都可以得到一个副本。现在,
Moe如果对Curly的信息作些评论,那么他也只须将自己的评论作为邮件发给“executives”,这些信息再自动发给这个邮政名单中所列出的每个
人。
我们将此概念推广。设想有一个别名包含了几十甚至几百个Internet 用户的电子邮件地址,发给这个别名的任何信息都会自动地发给同一组的每个人。人们可以通过此方法进行交谈、评论、帮助他人、讨论问题、共享信息等等。任何人发出的信息会到达同组的每个人。
作为一名Internet用户,你可以访问成千个邮政名单(Mailing Lists),其中的每一个名单都专用于某个讨论题。
X
服务器的执行程序位于/usr/X11R6/bin目录中,并且使用一个符号联接 “X”
,指向具体的执行程序,如XF86_VGA16或XF86_S3V等。因此直接输入X命令就能启动设置好的X服务器,系统将进入图形状态,并出现一个可以
移动的X形鼠标指针,但并没有其他反应。这是因为X服务器只负责处理输入和显示,具体对使用者的输入进行处理则由其他X客户负责,而直接启动X服务器没有
启动任何X客户,因而不能处理用户的任何输入。
为了利用图形界面的处理能力,在启动X服务器的同时还应该启动X客户程序来负责回应用户的输入。这个任务可以通过shell程序startx或 xinit来作到,这两个程序能在启动X的同时,启动X Window的窗口管理程序和其他X程序。
 
 startx和xinit缺省查看使用者个人目录下的.xinitrc文件,在这个文件内应该包含启动各个X客户程序的命令。最简单的.xinitrc
可能只包含一个命令来启动一个仿真终端xterm,也可以包含一系列命令来启动多个程序,创建出漂亮的X环境。想自己定制X
Window操作环境的使用者可以手工创建和修改这个文件,以得到不同的用户界面。
缺省情况下,用户并没有创建这个.xinitrc文件,这样xinit命令就只能启动一个xterm终端仿真程序,而没有执行任何其他的X程序,也没有执行窗口管理器。

使不存在.xinitrc文件,使用startx也能启动窗口管理器和几个
X客户程序,这是由于startx发现用户个人目录下不存在.xinitrc文件之后,就使用系统中的
/etc/X11/xinit/xinitrc作为xinit程序的启动文件(startx只是调用xinit的一个shell脚本)。因此更改系统的
xinitrc文件,就能使所有没有创建.xinitrc的用户仍然享有启动文件来启动X Window系统。
startx或xinit必须先在控制台下登录之后,输入相应命令才能进入X Window 环境。另一种方法为预先启动X Window系统,在X Window下登录进系统。这种方式是使用xdm来实现的。

用户通过登录认证之后,xdm就需要为用户启动登录会话。xdm就以用户身份执行/etc/X11/xdm/Xsession文件,然后再执行用户个人目
录下的.xsession文件。个人目录下的. xsession文件与.xinitrc文件类似,也是一个标准shell脚本
这个文件
与.xinitrc文件的不同之处在于,由于.xinitrc是在用户登录之后由xinit使用的,因此包括PATH在内的环境变量都已经在用户的.
profile等文件中设置正确了,而通过xdm登录的用户并没有执行.
profile等设置文件,因此必须在.xsession中设置PATH等环境变量,才能正确找到各个执行文件,否则就必须使用绝对路径来启动应用程序。
 
 另一个不同之处在于,个人目录下的.xsession文件必须存在,用户才能通过XDM正常进入X
Window,否则登录过程就会发生错误。而对于xinit来讲,.xinitrc
不是必需的如果.xsession的执行有问题,用户就不能从xdm的登录界面上登录进系统。此时可以检查相应用户目录下的.xsession-
errors文件,这个文件中将包含执行.xsession的错误信息。
要正确的在Linux下配置窗口系统,实际上就是生成正确的
XFree86配置文件,这个文件一般保存在/etc/X11/下,在X版本是3.x时,它的文件名为XF86Config,在X版本是4.x时,它的文
件名一般为XF86Config-4。在现在的发行版本中,处于硬件兼容性的考虑,他们一般都让这两个版本的XFree86包共存。
当然,如果您不能得到显卡的详细的设备参数的话,您也可以使用probeonly选项获得显示卡的详细信息。例如,
X -probeonly
配置显示器实际上是生成XF86Config文件的Monitor节,需要配置的信息一般包括:水平扫描频率范围、垂直扫描频率范围、监视器支持的显示模式、制造商信息。

常有两种启动X11的方式(然后就是窗口管理器)。传统方法是使用 startx
命令。另一种方法是使用图形登录管理器(也称为“显示管理器”)。最常见的显示管理器是 xdm ,它是XFree86发行版中的一部分。
Gnome提供的显示管理器称为 gdm ,KDE提供的则名为 kdm 。
常见的窗口管理器           gnome kde fvwm Xfce4
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/28622/showart_585662.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP