📄 199.html
字号:
<!doctype html public "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title>www.newok.com::FreeBSD使用大全</title>
<link rel=stylesheet href="newok.css" tppabs="http://www.newok.com/include/newok.css">
</head>
<body>
<div align=center>
<p> </p>
<table width=720>
<tr><td>
<strong>当前所在位置:</strong><a href="javascript:if(confirm('http://www.at.china.com/bsd/index.html \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.at.china.com/bsd/index.html'" tppabs="http://www.at.china.com/bsd/index.html" class=t1>FreeBSD使用大全>></a>
</td></tr>
</table>
<table width=700>
<tr><th><font color=white>FreeBSD连载(48):X Window的基本概念 </font></th></tr>
<tr><td> </td></tr>
<tr><td align=left><i>作者:</i>王波</td></tr>
<tr><td> </td></tr>
<tr><td><font color=white>使用和配置X Window<br><br><P> 设置好X服务器之后,就可以使用startx启动图形界面,以使用其他图形界<br>面的经验来使用X Window,但使用者常常会发现这个界面相当简单和粗糙。这是因<br>为X Window具有很大的灵活性和可配置性,其最基本的系统只提供了最基本设置,<br>如果要真正得到好用的界面,还需要进一步的设置。</P><br><br><P> 为了设置和使用X Window系统,首先就需要了解相关的X Window概念。</P><br><br><br><ul><P><LI><h2>X Window的基本概念</h2></LI></P></ul><br><br><P> 第一次接触X Window系统的使用者很容易混淆X Window系统中的客户机/服<br>务器的概念,初次接触X Window的使用者会认为X Window下的客户机/服务器的概念<br>与普通网络中的客户机/服务器的概念不太相同。通常的观念中,使用者使用客户工<br>作站,使用远端服务器提供的文件或打印服务,而在X Window下,使用者使用X服务<br>器进行操作,而客户程序可以运行在本地或者远端计算机上。</P><br><br><P> 如果进一步理解客户/服务器的概念,就会了解客户/服务器的概念指的是具<br>体运行的进程,而非计算机或使用者。不是与使用者联系最密切的计算机就是客户,<br>而是首先要明确服务资源,然后再以资源提供者和资源占用者来进行区分。在一般<br>的客户/服务器方式的应用中,一般是客户程序直接与使用者交互,因此就容易造成<br>错误的概念,以使用者为中心来区分客户和服务器。</P><br><br><P> 但在X Window下,服务资源为X服务器的显示处理能力,X客户程序要显示图<br>形图象,但它不能直接控制显示硬件,只能使用由用户面前的X服务器提供的显示资<br>源,同样它也不能接受用户输入,也只能使用X服务器控制的键盘或鼠标资源来接受<br>输入。在这里,X服务器是硬件的控制者,X客户只是单纯的执行程序,只能使用X服<br>务器提供的服务进行输入输出。</P><br><br><P align=center><IMG SRC="FreeBSD_49.gif" tppabs="http://www.newok.com/bsd/62/FreeBSD_49.gif" WIDTH=288 HEIGHT=192></P><br><br><ul><P><LI>X服务器(X Server)是一个管理显示的进程,必须运行在一个有图形<br>显示能力的计算机上。理论上,一台计算机上可以同时运行多个X服务器,每个X服<br>务器能管理多个与之相连的显示设备。</LI></P><br><br><P><LI>X客户程序(X Client)是一个使用X服务器显示其数据的程序,它可以运行<br>在与X服务器不同的计算机上。</LI></P><br><br><P><LI>X协议(X protocol)是X客户程序和服务器进行通信的一套协议,X协议支持<br>网络,能在本地系统中和网络实现这个协议,支持的网络协议有TCP/IP、DECnet等。</LI></P></ul><br><br><P> X的这种任务划分有几个优点:</P><br><br><P>客户程序可以在远程计算机上执行计算任务,而使用的X服务器仅负责复杂的图形<br>显示,充分发挥X服务器在显示上的优势。</P><br><br><P> 只有X服务器与硬件打交道,所有的客户程序都是硬件无关的,很容易在不同<br>的平台上移植。</P><br><br><P> 客户程序可以在不同的计算机上运行,从巨型机到个人计算机,充分发挥网络<br>计算的优越性。</P><br><br><P> 尽管每个X客户程序都可以对整个屏幕范围内进行显示操作,但标准的做法是先<br>创建一个显示窗口,此后客户程序的所有显示都相对于这个窗口进行操作。这样在同一<br>屏幕内,就能同时显示多个独立的客户程序,通过对窗口的管理在不同的程序之间进行<br>切换。每个窗口应该位于屏幕的哪个位置,何时显示,何时隐藏,以及窗口的标题、四<br>周如何显示,这些都不应该由产生这个窗口的客户程序自己控制和维护,否则就不能达<br>到简化设计的目的。X Window并没有自己实现这些任务,在X的设计原则中,这些代表<br>GUI风格的任务仍然是客户程序的任务,因此X将管理窗口的任务给予了一个特殊客户程<br>序 ── 窗口管理器,使用不同的窗口管理器将使X Window的外观看起来截然不同。</P><br><br><P> X系统只负责显示图形,并不限制显示和操作的风格,因此不同的X Window的风<br>格并不相同,使用者可以根据自己的喜好进行选择。</P><br><br><P align=center><IMG SRC="FreeBSD_50.gif" tppabs="http://www.newok.com/bsd/62/FreeBSD_50.gif" WIDTH=288 HEIGHT=187></P><br><br><P> 因此X Window上,所有的窗口形成了一个树状结构。X Window的窗口管理程序运<br>行在根窗口上,所有的其他窗口为根窗口的子窗口,而其他窗口上也有相应的按钮、对话<br>框等组件,这些是它的子窗口。</P><br><br><P> 由于X Window系统只提供了最基本的系统调用,而具体的窗口都有很多共性,因<br>此要开发X应用程序,应该首先使用开发工具包,而没有必要直接使用最基本的X Window<br>的系统调用,以简化写作程序的工作量。不同的公司或组织开发了各种工具包来提供创建<br>和管理具体窗口的构件,例如Motif套件,OpenLook套件等。每种套件都提供了菜单、按<br>钮、对话框等图形界面的标准构件,还提供基本的窗口管理器。使用不同套件开发的程序<br>,其显示风格也不相同,因此就在不同程序之间形成了不同的GUI风格。Motif和Openlook<br>就是两种不同的图形界面风格,当前Motif成为了商业X Window的一个标准,很多商业软<br>件均基于Motif进行开发,而Openlook则没有获得更普遍的支持。</P><br><br><p align=right>未完,待续。。。 </p></font></td></tr>
<tr><td> </td></tr>
<tr><td align=right><i>来源:</i><a href="javascript:if(confirm('http://freebsd.online.ha.cn/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://freebsd.online.ha.cn/'" tppabs="http://freebsd.online.ha.cn/">http://freebsd.online.ha.cn/</a></td></tr>
</table>
<p> </p>
<p> </p>
<p> </p>
声明:本站的文章和软件是本人从网上收集整理的(除本人的作品之外),所有版权属于作者,<br>
如有侵犯您的权益,请指出,本站将立即改正,谢谢.
<hr width=500>
<br>
<font color=#ffffff>Copyright 2000 <a href="javascript:if(confirm('http://www.newok.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.newok.com/'" tppabs="http://www.newok.com/" class=t1>www.newok.com</a></font>
</div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -