X Window系统
http://zh.wikipedia.org/wiki/X_Window%E7%B3%BB%E7%BB%9FX Window系统
维基百科,自由的百科全书
跳转到: 导航, 搜索
目录 [隐藏]
1 概述
2 X客户机/服务器模式和网络透明性
3 X的设计原则
4 使用者界面
5 实现
5.1 X终端
6 X的局限和批评
6.1 视频硬件
6.1.1 PC
6.1.2 其他设备
6.1.3 性能
6.1.4 稳定性
6.2 用户界面特征
6.3 网络
7 X的竞争者
8 历史
8.1 前身
8.2 起源和早期的发展
8.3 MIT X Consortium和the X Consortium, Inc.
8.4 Open Group
8.5 X.Org和XFree86
8.6 X.Org基金会
9 未来方向
10 命名
11 历史发布
12 参见
13 参考
14 外部链接
14.1 知名的实作
[编辑]
概述
X Window系统 (X11或X)是一种位图显示的窗口系统。它是在Unix和类Unix操作系统,以及OpenVMS上建立图形用户界面的标准工具包和协议,并可用于几乎所有的现代操作系统。
X 为 GUI 环境提供了基本的框架:在屏幕上绘图和移动视窗,以及与鼠标和键盘的互动。X 并没有管辖到使用者接口 — 这是由每个独立的程序处理。因为如此,以 X 为基础环境的视觉样式变化非常地多;不同的程序可能彻底地展现不同的接口。
X 以 "网络通透性" 为特色:应用程序("客户端" 应用程序)所执行的机器,不一定是使用者本地的机器(显示的 "服务器")。X 的 "客户端" 和 "服务器" 字眼的使用是人们经常预期的相反,"服务器" 是使用者本地的显示而不是远端的机器。
X 在 1984年起始于 MIT。现在的协定版本,X11,是在1987年9月所释出的。该专案是由 X.Org 基金会所领导;现在的参考实作是版本 11 release 6.8.2,且在MIT 执照和相似的表示许可执照下是自由软件。
KDE 3.3
GNOME 2
[编辑]
X客户机/服务器模式和网络透明性
详见: X Window系统的协议和架构
X基于客户端-服务器模型。一个X服务器与各种客户端程序通讯 。服务器接受对于图形输出(窗口)的请求并反馈用户输入(键盘、鼠标、触摸屏)。服务器可能是一个能显示到其他显示系统的应用程序,也可能是控制某个PC的视频输出的系统程序,还可能是特殊硬件。
术语客户端-服务器——你的终端是"服务器",而远端应用程序是 "客户端"——经常困扰X的新用户,因为似乎正好相反。但X采纳了程序而非最终用户或者硬件的视角:本地的X显示为程序提供显示服务,所以它扮演了服务器;远端程序使用了该服务,所以它是客户端。
在这个例子里,X服务器从键盘鼠标获得输入并显示到屏幕。 网页浏览器和终端模拟器运行在用户的工作站上,而从该用户的计算机上控制的一个系统更新软件运行在远端服务器上。注意,这个远端程序运行时好像就在本地一样。服务器和客户端之间的通信协议的运作对计算机网络是透明的: 客户端和服务器可以在同一台计算机上,也可以不是, 或许其架构和操作系统也不同,但都能运行。客户机和服务器还能够使用安全连接上在互联网上安全地通讯。
为了使远端客户程序显示到本地服务器,用户一般需要启动一个终端窗口和到达远端计算机的telnet或者ssh ,令其显示到用户计算机, (例如 在运行]的远端计算机上export DISPLAY=[用户的计算机]:0)然后启动客户端。 然后客户端就会连接到本地计算机,并且远端应用程序会显示到本地屏幕并被本地输入设备所控制。与之对应,本地计算机上也可以执行一个连接到远端计算机的小助手程序并在那里启动期望的应用程序。
实际的远端客户端的例子有:图形化管理远程计算机;在远端Unix计算机上运行计算密集的仿真程序并把结果显示到本地的Windows桌面计算机;用一套显示器、键盘和鼠标控制同时运行在多台计算机上的图形化软件。
[编辑]
X的设计原则
1984年,Bob Scheifler和Jim Gettys制订了X的早期原则:
除非没有它就无法完成一个真正完整的应用程序,否则不用增加新的功能。
决定一个系统不是什么和决定它是什么同样重要。与其去适应整个世界的需要,宁可使得系统可以扩展,这样可以用上层兼容的方式来满足新增需求
只有根本没有实例才会比只有一个实例更糟。
如果问题没有完全弄懂,可能最好根本就不要去解决它
如果预期要用百分之90的努力去完成百分之10的工作,应该用更简单的办法解决。 (参见更糟就是更好。)
尽量避免复杂性。
提供机制而不是策略。实践中把用户界面策略放在用户手里。
第一条原则在设计X11时修改为:“除非制订有真实的应用程序需要,否则不用增加新功能。” X基本上一直遵循这些原则。参考实现是从扩展和改进的著手来进行开发,同时和1987年的最初的协议几乎保持完全兼容。
CDE on UNIX (Solaris 8)
DECwindows CDE on OpenVMS 7.3-1
[编辑]
使用者界面
X故意没有规范应用程序的使用者界面,例如 按钮、选单和视窗的标题栏等等。这些都由视窗管理器(window managers)、GUI构件工具包、桌面环境(desktop environments)或者应用程序指定的GUI(例如POS机)等等诸如此类的用户软件来提供。因此造成多年以来"典型"的X界面惊人的多样化。
视窗管理器用于控制视窗程序的位置和外观。其界面类似Microsoft的Windows或者Macintosh(例如KDE的Kwin或者GNOME的Metacity ),但是控制机制截然不同(例如,X提供的基本视窗管理器twm)。视窗管理器可能只是一个骨架,(例如 twm),也可能提供了全套桌面环境的功能(例如 Enlightenment)。
大多数用户使用X时包括了整套桌面环境,有视窗管理器、各种应用程序和协调一致的界面。最流行的是GNOME和KDE。Unix的标准环境是通用桌面环境 (CDE)。而freedesktop.org积极致力于促进互相竞争的X桌面之间的桌面和及其组件的兼容性。
[编辑]
实现
X的标准实现是X.Org的参考实现。由于其许可证比较宽松,出现了大量自由的或者专有的实现。商业的Unix商家倾向于采用参考实现并使之适应其硬件,例如高度定制并加入专有的扩展。
Image:X11 mac gimp app.jpg
X11.app以无根方式运行在Mac OS X。 屏幕显示GIMP 在没有X window 系统情况下运行。
Cygwin/X以无根方式运行在微软的Windows XP上。屏幕显示X 的应用程序(xeyes,xclock和xterm)与原生的Windows应用程序(日期和时间,计算机) 共享屏幕。
直到2004年,在自由的类Unix系统上最常见的X变体是XFree86。顾名思义,它源于X的386兼容的PC机的移植,到了上世纪90年代末期成为X的技术创新的主要来源和X开发的事实标准。但是从2004年起,最流行的X服务器是XFree86的分支——X.Org的参考实现。
虽然X一般和Unix联系在一起,X服务器也能够自然地存在于其他图形环境。 Hewlett-Packard的OpenVMS操作系统用X加上CDE做为起标准桌面环境,称为DECwindows。苹果公司的Mac OS X v10.3 (Panther)包括Apple X11,它基于XFree86 4.3和X11R6.6,并能和Mac OS X更好地集成。
微软的Windows本身不包含对X的支持,但是有不少第三方的实现可用,其中有自由软件如Cygwin/X、Xming、WeirdMind 和WeirdX,也有专有软件如WiredX、Exceed和X-Win32。他们多用于控制远程X客户端。
当X寄生在其他窗口系统(例如Windows或者Mac OS)时,X系统一般是"rootless"的,就是说宿主窗口系统担当根窗口(背景和相关菜单)并管理寄生的X窗口的位置。但是也有些服务器,例如Exceed,能够在宿主系统上创建根窗口使得远程客户端能够做为分离的窗口在其上显示。
[编辑]
X终端
X终端是做为瘦客户机在X服务器上运行的专用硬件。该架构广泛用于为了使多人同时使用同一个大型服务器而构造终端。这也符合MIT的计划的初衷。
X终端搜索网络,使用XDMCP产生允许其运行客户机的主机列表。 初始主机需要运行X display manager。
专用的X终端(硬件)现在已经不太常见了,现在经常使用个人计算机来完成相同的功能。
[编辑]
X的局限和批评
UNIX-HATERS Handbook用整整一章"The X-Windows Disaster" 来讨论X在上世纪80年代末到90年代初的问题。
[编辑]
视频硬件
[编辑]
PC
在PC世界里,需要第三方硬件的驱动的非主流的个人计算机软件往往不能支持所有为Microsoft Windows出品的设备。 X Window也不例外,它的实现往往缺少较新(或者非常旧)的显卡 高效驱动程序。
X.org和XFree86这样的开源X实现中,开发社区通过复用已有代码,可以很快更新改进驱动程序,从而能够为较陈旧的或者很通用的硬件开发初高质量的驱动。
高性能图形计算目前是顶级的图形功能,一般由厂家通过专有驱动来实现,而且往往优先考虑是Windows (最大的消费市场)。由于高性能视频市场的显赫地位,一些硬件/驱动厂商会考虑通过将技术细节变为商业秘密或者将其中创新变为软件专利,而这阻碍了开源驱动的实现。
[编辑]
其他设备
在PC机之外的世界里,很多X的实现是为非传统设备如PDA和手机而编写(或者移植) 的。这样的实现必须提供为在此之上运行的平台提供至少是必须的设备支持。
[编辑]
性能
X Window的C/S体系设计在应用程序和视频硬件之间多加了一层软件,导致图形效率下降,所以引起了一些批评。因此开发了若干扩展,在设备和客户机在同一个系统上时,通过在取得适当许可的情况下,以直接访问设备来改善这一问题。而在Linux上,一些视频驱动已经部分移入内核以提高效率。
[编辑]
稳定性
另一方面,X也被批评为需要(或者提供)了过多的对硬件的直接访问,从而影响了系统稳定性。 行为不良的显卡驱动(有时也可能是应用程序)甚至能够导致整个系统崩溃或者重启;有时即时操作系统仍在工作,它也不到继续渲染其显示 (这时除了重启,缺乏好的恢复手段).
根本上,目前所有的桌面GUI操作系统都提供某种对硬件的直接访问,支持者认为市场已经证明为了提供图形性能牺牲一点稳定性是值得的。或许将来随着技术和用户的演化这一平衡会有所变化。
[编辑]
用户界面特征
X有意没有规范用户界面和程序之间大多数的通信,导致出现了几种非常不同的界面,同时程序之间协同困难;而客户机之间的互操作规范ICCCM以难以正确实现而闻名。后来的标准化尝试,如Motif和CDE,也于事无补。长久以来这已经成为用户和程序员的巨大的挫折的源头 。目前,程序的感观一致性和通信一般是通过为特定桌面环境或者构件工具箱编程来处理,这也避免了直接和ICCCM接触。
X缺乏良好的网络透明的声音系统。当用户对声音日益期盼时,各种不兼容的声音子系统便出现了。过去,大多数程序员只好忽略网络问题,简单地使用本地的并且是OS专用的声音API。第一代客户机-服务器声音系统有rplay和Network Audio System。而最近的努力产生了EsounD(GNOME)和ARts(KDE),而这也并非标准。而其他系统如Media Application Server则正在开发当中。
直到最近,X也没有好的打印显示器所显示的内容(所见即所得 )的解决方案。 许多X客户机完全用PostScript实现打印,而这与发送到服务器的几乎整个是分离的。从X11R6.3起包含了Xprint,此时客户机已经不错,但是服务器实现还不行。而从X11R6.8起实现的质量已经很好,并且获得了部件的支持。
[编辑]
网络
X不能像VNC那样把客户端和会话从一个服务器卸下然后再附加到另一个上,但为X增加此功能的工作正在进行,另外还要实现通过VNC实现X服务器的显示。
X服务器和远端客户机之间的网络通信缺省使用明文,攻击者使用包嗅探器者就能够截获和阅读它。一般可以通过在SSH隧道上使用X来解决。
设备中立和客户机与服务器分离还带来了一定开销。 X的网络透明性要求客户机和服务器分别运行。在其早期,与同时的采取窗口系统嵌入操作系统这一方法的Microsoft Windows和Mac OS比较,这给独立系统带来明显的性能影响。为了获得可以接受的性能推荐起码要4到8MB的RAM,但在1990年代之前,这被认为与Windows 或者Mac OS相比太过分了。
当前版本的Windows和Mac OS X Quartz也包含了和X的客户机/服务器相类似的子系统划分,其性能和资源需求同X加上KDE或者GNOME也类似。 现在主要的开销来自于客户机和服务器之间的网络往返延迟(滞后时间而非协议本身),应该通过应用程序的设计来处理。
[编辑]
X的竞争者
X在Unix-like系统上几乎完全占据统治地位。但是仍然有人尝试提供替代品和更多的选择。过去曾经有Sun的NeWS,但它遭到市场失败;还有 NeXT的Display PostScript,它最终转变为苹果电脑的Quartz for Mac OS X。
应对对于X的批评的更前卫的尝试有Berlin/Fresco和Y Window System这样的完全替换。这些代用品被认为不值得采用,而任何不能做到与X向后兼容的的替代品的可行性都被广泛置疑。
其他有的竞争者通过直接操作硬件来避免X的开销,这样的项目包括DirectFB。但是由于DRI正在致力于使用可靠的内核级接口提供帧缓冲,这些努力可能变成是多余的。
其他以图形终端服务形式达到网络透明性的尝试还有VNC(很底层的系统,通过网络发送压缩的位图;Unix上的实现包括X服务器)、Citrix MetaFrame(类似X的Windows软件)、Tarantella (为网络浏览器提供Java客户机)和NX_technology(用于远程显示的节省带宽的协议)。
[编辑]
历史
[编辑]
前身
在 X 之前有好几个位图的显示系统。 Xerox 提出的 Alto(1973年)和 Star(1981年)。苹果电脑提出的 Lisa(1983年)和麦金塔(1984年)。在 Unix 世界有雅典娜工程(1982年)和 Rob Pike 的 Blit 终端机(1984年)。
X 从1983年之前称为W Window系统的视窗系统中,推衍出它的名字当作是继任者(在拉丁字母里面 X 直接接在 W 后面)。W Window系统是运行于 V 操作系统。W 使用一个支援终端机和图形视窗的网络协定,而服务器维护显示的列表。
[编辑]
起源和早期的发展
X 起初是 MIT 于 1984年的构想,当作为 雅典娜工程的 en:Jim Gettys 和 MIT 电脑科学实验室的 en:Bob Scheifler 的共同研究。Scheifler 需要一个可以使用的显示环境来对 Argus 系统除错。雅典娜工程,是 DEC,MIT,和 IBM 之间的联合计划,用来提供给需要一个平台独立显示系统,可把不同种类多个制造商之系统连结在一起,给所有学生容易存取电脑资源;该视窗系统曾经在卡耐基美隆大学(Carnegie Mellon University,CMU)的雅典娜工程中发展过,但是在授权上并可能得到且没有其他可替代可选择。
该计划借由创立一个可以执行本地应用程序且能够拜访远端资源的协定来解决这个问题。起初在 1983年中期 W 视窗系统的 Unix 移植在 V 操作系统下以 1/4 速度运行;在 1984年5月,Scheilfer 将 W 的同步协定换成异步协定,以及将显示列表换成直接模式绘图,而创造出 X 的版本 1。X 是第一个真正的硬件和制造商无关的视窗系统环境。
Scheifler, Gettys 和 Ron Newman 著手工作且 X 快速地进展著。版本 6 于 1985年1月推出。DEC 正准备要推出它的第一个Digital UNIX工作站,且 X 是唯一最有希望即时准备妥当的视窗系统。于是 X6 被移植到 MicroVAX 的 DEC QVSS 显示器。
1985年二季度,为了支持DEC的VAXstation-II/GPX增加了色彩支持,由此形成了版本9。尽管MIT此前已经免费许可X6给一些外部群体,它此时决定在后来演变为MIT License的许可证下发放对X9和后续版本。X9于1985年9月发布。
布朗大学的一些人将版本9移植到IBM RT/PC,为了读取RT的非对齐数据对协议做了不兼容的修改,导致1985年稍后发布版本10。1986年有若干外部团体对X提出需要。X10R2发布于1986年1月。1996年2月的X10R3是第一个广泛发行的版本,DEC和惠普都基于它发布产品。别的一些团体把X10移植到Apollo或者Sun工作站甚至IBM PC/AT。X10的最后一个版本X10R4于1986年12月发布。
尽管X10既有趣又强大,但很明显在X被更加广泛地采纳前人们期待X的协议更加设备中立;但是这样大规模地完全重新设计所要求地资源超出了MIT自身能够提供的。于是DEC的Western Software Laboratory跻身该项目。DEC WSL的Smokey Wallace ,另外还有Jim Gettys提议X11在DEC WSL创建,但能够使用与X9和X10同样的方法自由获取。该项目于1986年5月开始,协议部分于8月结束,软件的alpha测试于1987年2月就,beta测试开始于5月。X11最终于987年9月15日发布。
X11协议设计由Scheifler领导,并在nascent Internet的开放邮件列表上广泛讨论。于是X成为最早的较大规模的开源软件项目之一。
[编辑]
MIT X Consortium和the X Consortium, Inc.
1987年,随着X11取得明显成功,MIT希望免除X的管理责任。但是1987年6月语9个厂商举行会晤,这些厂商表示他们相信为了避免X由于商业因素而分裂,需要中立方的参与。1988年1月,X Consortium做为非营利厂商团体而成立,Scheifler任主管,而Keith Packard成为高级开发人员,以指导X在中立气氛下的,包括商业和教育目的的开发。MIT X Consortium完成了一系列重要的X11版本,第一个就是1988年1月的版本2(X11R2),
1993年X Consortium, Inc. (非营利公司) 做为MIT X Consortium的继承者而成立。它于1994年5月16日发布了X11R6。 1995年,它接手了Unix系统的Motif工具箱和Common Desktop Environment。X Consortium在发布了最后一个版本X11R6.3后,于1996年末解散。
[编辑]
Open Group
1997年中,X Consortium将X的管理交给The Open Group,而它是19996年由Open Software Foundation和X/Open合并成立的厂商团体。
Open Group1998年初发布X11R6.4。Open Group为了保证X开发的资金,所以X11R6.4偏离传统的自由许可条款,从而引起争议。新条款阻碍了许多项目(例如XFree86)采纳它,甚至包括一些厂商。在XFree86以fork相威胁后 ,X11R6.4于1998年9月在传统许可条款下发布,而The Open Group的最后一个发布是X11R6.4 patch 3。
[编辑]
X.Org和XFree86
1999年5月Open Group组建了X.Org。X.Org指导了X11R6.5.1之前的版本发布。 在此期间X的开发死气沉沉 ;1992年后多数技术创新都发生在XFree86项目中。1999年,由于众多对于XFree86在Linux上应用有兴趣的硬件厂商的推动,并也已经成为最普及的X版本,XFree86成为X.Org的荣誉成员(不付费)。
2003年,随着Linux的流行X被大量安装。但是X.Org几乎无声无息,活跃的开发由 XFree86承担。但是,XFree86内部却发生了争论。它被认为太教堂式了,如同它的开发模式; 开发者不能通过CVS做提交,而厂商被迫维护大量补丁。2003年3月,自从最初的MIT X Consortium结束之后就参加XFree86的Keith Packard由于被认为态度不良而被驱逐 。
X.Org和XFree86开始讨论能够有助于X开发的重组 。Jim Gettys早在2000年就热心于开放的开发模式。Gettys、Packard和其他几个人开始讨论有效管理X和开发式开发的细节。
最终就像是X11R6.4许可证争议的回响,XFree86于2004年2月在更加严格许可证下发布了4.4 。许多依赖X的项目认为该许可证无法接受 ,特别是它和 GNU General Public License 不兼容。 这引起一场论战,许多人认为到了该fork 的时候了。
[编辑]
X.Org基金会
2004年年初X.Org基金会成立。这标志着X的管理的根本性转变。1988年以来X的管理者(包括过去的X.Org)都是厂商组织,而基金会由软件开发者领导,采用依靠外部参与的集市模式的社区开发。其成员身份对个人开放,法人成员则成为赞助者。X.Org还开始同freedesktop.org密切合作。
在XFree86 4.4RC2基础上合并了X11R6.6的修改,基金会在2004年4月发布了X11R6.7。Gettys和Packard使用了在旧许可证下发布的XFree86的最后的版本,但是强调了开放的开发模式并保持了与GPL的兼容性,从而带来了很多过去XFree86的开发者 。
2004年9月X11R6.8发布。它加入重要的新特性,包括对半透明窗口的初步支持、很多复杂的视觉效果、屏幕放大和简图,以及与3D沉浸式显示系统(例如Sun的Project Looking Glass和Croquet project)集成的设施。而外观策略由称为合成管理器(compositing managers)的外部应用程序提供。
[编辑]
未来方向
有了X.Org基金会和freedesktop.org,X的开发再度加速。目前和未来的版本都将是可使用的最终产品,而不仅仅是在其上构筑产品的骨架。
随着硬件操作被移入内核,几乎对视频硬件的访问将通过OpenGL(没有硬件OpenGL的系统使用Mesa)和基层直接渲染模块进行。这由XFree86 version 4引入并出现在X11R6.7及其后续版本。
参考实现的架构被模块化,每个独立模块做为分离的项目维护。X11R6.9将是单体源代码而X11R7.0将有具备相同特征集的模块化源代码。。
[编辑]
命名
"X Window系统"通常简称为"X11"或者"X"。"X Windows"(按照"Microsoft Windows"的风格)一词已经正式废弃,一般也认为并不正确,尽管自从X之初就普遍使用并为了行文简洁而受偏爱(例如在UNIX-HATERS Handbook中)。 -->
[编辑]
历史发布
版本 发布日期 主要变更
X1 1984年6月 首次成为X,有了区别于W的基本转变。
X6 1985年1月
X9 1985年9月 色彩。首次在MIT License下发布。
X10 1985年后期 IBM RT/PC。
X10R2 1986年1月
X10R3 1986年2月 首次在MIT之外发布。
X10R4 1986年12月 X10的最后一版。
X11 1987年9月15日 当前协议的第一次发布
X11R2 1988年1月 X Consortium的第一个发布。
X11R3 1988年10月25日
X11R4 1989年12月22日 改进应用程序,新字体,采纳twm做为标准窗口管理器。
X11R5 1991年 X386
X11R6 1994年5月16日 ICCCM v2.0; Inter-Client Exchange; X会话管理;X同步扩展;X图像扩展了;XTEST扩展;X输入;X Big Requests;XC-MISC;XFree86的更改。
X11R6.1 1996年5月14日 X双缓冲扩展;X键盘扩展;X记录扩展。
X11R6.2X11R6.2 是X11R6.3的子集的tag——R6.1之后的仅有的新特性是XPrint和垂直书写和用户定义字符的Xlib实现
X11R6.3 (Broadway) 199612月23日 Web功能,LBX。X Consortium的最后一次发布。
X11R6.4 1998年5月31日 Xinerama。
X11R6.5X.org内部版本,未公开提供。
X11R6.5.1 2000年8月20日
X11R6.6 2001年4月4日 B修复缺陷,合并XFree86的更改。
X11R6.7.0 2004年4月6日 X.Org基金会发布的第一个版本,合并了XFree86 4.4rc2,为最终用户提供的完整发布,去除了XIE、PEX和libxml2。
X11R6.8.0 2004年9月8日 窗口半透明,XDamage, Distributed Multihead X,XFixes, Composite,XEvIE。
X11R6.8.1 2004年9月17日 libxpm的安全缺陷修复。
X11R6.8.2 2005年4月10日 缺陷修复,驱动升级。
[编辑]
参见
图形使用者接口的历史
X11颜色名称
[编辑]
参考
Robert W. Scheifler and James Gettys: X Window System: Core and extension protocols: X version 11, releases 6 and 6.1, Digital Press 1996, ISBN 1-55558-148-X
The Evolution of the X Server Architecture (Keith Packard, 1999)
The means to an X for Linux: an interview with David Dawes from XFree86.org (Matthew Arnison, CAT TV, June 1999)
Lessons Learned about Open Source (Jim Gettys, 2000年USENIX上讨论X的历史)
On the Thesis that X is Big/Bloated/Obsolete and Should Be Replaced (Christopher B. Browne)
Open Source Desktop Technology Road Map (Jim Gettys,2003年12月9日)
X Marks the Spot: Looking back at X11 Developments of Past Year (Oscar Boykin, OSNews,2004年4月25日)
Getting X Off The Hardware (Keith Packard, 2004年6月在Ottawa Linux Symposium发言)
Why Apple didn't use the X windowing system (Mike Paquette, 苹果计算机)
The Cautionary Tale of XFree86 (引自Make Your Open Source Software GPL-Compatible. Or Else. by David A. Wheeler,2005年4月16日)
The State of Linux GraphicsX现状综述
[编辑]
外部链接
X.Org Foundation官方网站
The X Windows Disaster (UNIX-HATERS Handbook)
[编辑]
知名的实作
XOrg Foundation Open Source Public Implementation of X11 — 正式参考实现
XFree86 — 很多年来最受欢迎的版本,特别是在开放原始码的类 Unix 平台
X11 for Mac OS X — 与 Mac OS X 紧密整合的 Apple X11 :-D 要好好学习啊!!!!
页:
[1]