X-Window/X Protocol:X Window or X Protocol or X System
X 视窗系统协议,即 X 视窗或 X 协议,是一个图形结构,用于 UNIX 和 Linux 下的图形系统。 X 视窗系统很少用于 VMS 、 MVS 和 MS-WINDOWS 等系统。它为显示窗口图形提供了固有的面向客户机 / 服务器的基础。 X 视窗系统提供了一个公共协议,通过它客户程序可以查询和更新 X 服务器上的信息。 X 视窗系统( X 协议)答应网络中不同计算机上的进程在其它网络显示器上显示内容。
X 视窗系统( X 协议)定义的客户机和服务器角色如下:
X 服务器是一种运行在用户桌面的程序,用于治理视频系统,包括交互式 I/O 设备,如鼠标、键盘和一些非凡设备等。主要功能有: 1 )在屏幕上显示图形请求; 2 )回复请求信息; 3 )报告请求中的错误; 4 )治理键盘、鼠标和显示器设备; 5 )将键盘和鼠标输入复用到连接各自 X 客户机( X 事件)的网络上; 6 )创建、映射和删除视窗; 7 )在视窗中写和绘图。
X 客户机是一个运行在连接 X 服务器以显示图形的另一个主机上的应用程序。客户机通常运行在一个强大的 UNIX/LINUX 平台上,也就是通常的“服务器“。主要功能有: 1 )发送请求给服务器; 2 )从服务器处接收事件; 3 )从服务器处接收错误。
X 系统将各种组件分成各个单独的子系统。 X 视窗系统( X 协议)框架的主要组件有:
视窗治理员——当鼠标指针指向由特定应用程序控制的屏幕范围外时,控制事件的发生。
程序 / 文件治理员——通常是一个显示应用程序图标的程序,并答应用户运行这些程序。
内部程序接口—— X 视窗客户机通信的标准模式,称之为 ICCCM 。 CORBA 也用来提供更加精密复杂的方法用于 X 视窗通信。通信的实现基于 TCP/IP 网络。
X 视窗系统( X 协议)包括两个基本版本: X10 和 X11 。
X 协议具有以下客户机和服务器间的主要通信信息:
请求
X 客户机向 X 服务器发出服务请求,如创建 Window 。
为增强性能, X 客户机通常并不期望或等待响应。请求保留给可靠的网络层进行传送。
X 请求是 4 字节的任意倍。
答复
X 服务器响应某个的 X 客户机请求。注重:并不是所有的请求都需要响应。
X 答复是 4 字节的任意倍,但最小为 32 字节。
事件
X 服务器将转发事件给 X 客户机。可能包括键盘或鼠标输入。为减小网络流量,只有期望的事件发送给 X 客户机。
X 事件是 32 字节。
差错
X 服务器应客户机请求报告差错。差错与事件相似,但它们的处理不同。
X 差错大小与事件相同,用于简化它们的处理。它们被发送到 X 客户机(32 字节)的差错处理程序中。