FreeBSD连载(48):X Window的基本概念

2009-05-13 12:22:10来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


使用和配置X Window
  设置好X服务器之后,就可以使用startx启动图形界面,以使用其他图形界面的经验来使用X Window,但使用者常常会发现这个界面相当简单和粗糙。这是因为X Window具有很大的灵活性和可配置性,其最基本的系统只提供了最基本设置,如果要真正得到好用的界面,还需要进一步的设置。
  为了设置和使用X Window系统,首先就需要了解相关的X Window概念。


  • X Window的基本概念

  第一次接触X Window系统的使用者很容易混淆X Window系统中的客户机/服务器的概念,初次接触X Window的使用者会认为X Window下的客户机/服务器的概念与普通网络中的客户机/服务器的概念不太相同。通常的观念中,使用者使用客户工作站,使用远端服务器提供的文件或打印服务,而在X Window下,使用者使用X服务器进行操作,而客户程序可以运行在本地或者远端计算机上。
  如果进一步理解客户/服务器的概念,就会了解客户/服务器的概念指的是具体运行的进程,而非计算机或使用者。不是与使用者联系最密切的计算机就是客户,而是首先要明确服务资源,然后再以资源提供者和资源占用者来进行区分。在一般的客户/服务器方式的应用中,一般是客户程序直接与使用者交互,因此就容易造成错误的概念,以使用者为中心来区分客户和服务器。
  但在X Window下,服务资源为X服务器的显示处理能力,X客户程序要显示图形图象,但它不能直接控制显示硬件,只能使用由用户面前的X服务器提供的显示资源,同样它也不能接受用户输入,也只能使用X服务器控制的键盘或鼠标资源来接受输入。在这里,X服务器是硬件的控制者,X客户只是单纯的执行程序,只能使用X服务器提供的服务进行输入输出。


  • X服务器(X Server)是一个管理显示的进程,必须运行在一个有图形显示能力的计算机上。理论上,一台计算机上可以同时运行多个X服务器,每个X服务器能管理多个与之相连的显示设备。
  • X客户程序(X Client)是一个使用X服务器显示其数据的程序,它可以运行在与X服务器不同的计算机上。
  • X协议(X protocol)是X客户程序和服务器进行通信的一套协议,X协议支持网络,能在本地系统中和网络实现这个协议,支持的网络协议有TCP/IP、DECnet等。

  X的这种任务划分有几个优点:
客户程序可以在远程计算机上执行计算任务,而使用的X服务器仅负责复杂的图形显示,充分发挥X服务器在显示上的优势。
  只有X服务器与硬件打交道,所有的客户程序都是硬件无关的,很容易在不同的平台上移植。
  客户程序可以在不同的计算机上运行,从巨型机到个人计算机,充分发挥网络计算的优越性。
  尽管每个X客户程序都可以对整个屏幕范围内进行显示操作,但标准的做法是先创建一个显示窗口,此后客户程序的所有显示都相对于这个窗口进行操作。这样在同一屏幕内,就能同时显示多个独立的客户程序,通过对窗口的管理在不同的程序之间进行切换。每个窗口应该位于屏幕的哪个位置,何时显示,何时隐藏,以及窗口的标题、四周如何显示,这些都不应该由产生这个窗口的客户程序自己控制和维护,否则就不能达到简化设计的目的。X Window并没有自己实现这些任务,在X的设计原则中,这些代表 GUI风格的任务仍然是客户程序的任务,因此X将管理窗口的任务给予了一个特殊客户程序 ── 窗口管理器,使用不同的窗口管理器将使X Window的外观看起来截然不同。

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD连载(47):使用xf86config配置X服务器

下一篇:FreeBSD连载(49):进入X Window