X的基本部件
摘自:百度百科
原文链接:http://baike.baidu.com/view/153406.htm?fromenter=Xwindow
X系统不像早期的视窗系统是把一堆同类软件集中在一起,而是由3个相关的部分组合起来的。
(1)Server(服务器)
Server是控制显示器和输入设备(键盘和鼠标)的软件。Server可以创建视窗,在视窗中画图形和文字,回应Client程序的“需求”(requests),但它不会自己动作,只有在Client程序提出需求后才完成动作。 每一套显示设备只对应一个惟一的Server,而且Server一般由系统的供应商提供,通常无法被用户修改。对于操作系统而言,Server只是一个普通的用户程序而已,因此很容易更换新的版本,甚至是第三方提供的原始程序。
(2)Client(用户端)
Client是使用系统视窗功能的一些应用程序。在X下的应用程序称做Client,原因是它是Server的客户,要求Server回应它的需求完成特定的动作。
X Window系统中的客户机/服务器的概念:
通常的观念中,用户使用客户工作站,使用远程服务器提供的文件或显示服务,而在X Window下,用户使用X服务器进行操作,而客户程序可以运行在本地或者远程电脑上。
如果进一步理解,就会了解客户/服务器的概念指的是具体运行的进程,而非电脑或用户。不是与用户联系最密切的电脑就是客户,而是首先要明确服务资源,然后 再以资源提供者和资源占用者来进行区分。在一般的客户/服务器方式的应用中,一般是客户程序直接与用户交互,因此就容易造成错误的概念,以用户为中心来区 分客户和服务器。
X服务器(X Server)是一个管理显示的进程,必须运行在一个有图形显示能力的电脑上。理论上,一台电脑上可以同时运行多个X服务器,每个X服务器能管理多个与之相连的显示设备。
X客户程序(X Client)是一个使用X服务器显示其资料的程序,它可以运行在与X服务器不同的电脑上。
X协议(X protocol)是X客户程序和服务器进行通信的一套协定,X协议支持网络,能在本地系统中和网络实现这个协议,支持的网络协议有TCP/IP, DECnet等。
X的这种任务划分有几个优点:
(1)客户程序可以在远程电脑上执行计算任务,而使用的X服务器仅负责复杂的图形显示,充分发挥X服务器在显示上的优势。
(2)只有X服务器与硬件打交道,所有的客户程序都与硬件无关,这很容易在不同的平台上移植。
(3)客户程序可以在不同的电脑上运行,从巨型机到个人电脑,从而充分发挥网络计算的优越性。
... ...
3.Server和Client之间的通信
Server和Client通信的方法大致有两类,对应于X系统的两种基本操作模式。
第一类,Server和Client在同一台机器上执行,它们可以共同使用机器上任何可用的通信方法做互动式信息处理。在这种模式下,X可以同其他传统的视窗系统一样高效工作。
第二类,Client在一部机器上运行,而显示器和Server则在另一部机器上运行。因此两者的信息交换就必须通过彼此都遵守的网络协议进行,最常用的协议为TCP/IP。这种通信方式一般被称为网络透明性,这也几乎是X独一无二的特性。
5.X独立于操作系统
X不是内置于操作系统,它只是比用户层次稍高一些。在系统中也是一个相对独立的元件。这样做有如下优点:
l 易于安装和改版,甚至去除。这种工作不需要重启系统,也不会对其他应用程序造成干扰。
l 第三方很容易支持并加强它的功能。例如你的制造厂商提供的系统不够好,你可以向别人买更好或更快的版本。
l X不会制定操作系统,因此成为一种标准,这也是第三方发展软件的原动力。
l 为了开发者。在Server上进行工作时,如果程序异常中断,只会影响到视窗系统,不会造成机器的损坏或操作系统内核的破坏。
posted on 2011-08-30 23:21 miaoshuncai 阅读(235) 评论(0) 收藏 举报
浙公网安备 33010602011771号