X-window系統

X-window系統

X Window系統(也常稱為X11或X X的工作站)是一種以點陣圖方式顯示的軟體視窗系統。最初是1984年麻省理工學院的研究,之後變成UNIX、類UNIX、以及OpenVMS等作業系統所一致適用的標準化軟體工具套件及顯示架構的運作協定。X Window系統通過軟體工具及架構協定來建立作業系統所用的圖形用戶界面,此後則逐漸擴展適用到各形各色的其他作業系統上。現在幾乎所有的作業系統都能支援與使用X。更重要的是,今日知名的桌面環境——GNOME和KDE也都是以X Window系統為基礎建構成的。

X Window系統(也常稱為X11或X)是一種以點陣圖方式顯示的軟體視窗系統。最初是1984年麻省理工學院的研究,之後變成UNIX、類UNIX、以及OpenVMS等作業系統所一致適用的標準化軟體工具套件及顯示架構的運作協定。X Window系統通過軟體工具及架構協定來建立作業系統所用的圖形用戶界面,此後則逐漸擴展適用到各形各色的其他作業系統上。現在幾乎所有的作業系統都能支援與使用X。更重要的是,今日知名的桌面環境——GNOME和KDE也都是以X Window系統為基礎建構成的。
由於X只是工具套件及架構規範,本身並無實際參與運作的實體,所以必須有人依據此標準進行開發撰寫。如此才有真正可用、可運行的實體,始可稱為實現體。目前依據X的規範架構所開發撰寫成的實現體中,以X.Org最為普遍且最受歡迎。X.Org所用的協定版本,X11,是在1987年9月所發布。而今最新的參考實作(參考性、示範性的實作體)版本則是X11 Release 7.1(簡稱:X11R7.1),而此專案由X.Org基金會所領導,且是以MIT授權和相似的授權許可的自由軟體。

X客戶端/伺服器模式和網路透明性

X能為GUI環境提供基本的框架:在螢幕上描繪、呈現圖像與移動程式視窗,同時也受理、運行、及管理電腦與滑鼠、鍵盤的互動程式。不過,X並沒有管轄到使用者接口的部份,而是由其他以X為基礎的實現體來負責,也因為如此,以X為基礎環境所開發成的視覺樣式非常地多;不同的程式可能有截然不同的接口呈現。
X採行客戶端-伺服器的架構模型,由一個X伺服器與多個X客戶端程式進行通訊,伺服器接受對於圖形輸出(視窗)的請求並反饋用戶輸入(鍵盤、滑鼠、觸控螢幕),伺服器可能是一個能顯示到其他顯示系統的應用程式,也可能是控制某個PC的視頻輸出的系統程式,也可能是個特殊硬體。
X的一大特點在於“網路透明性”[2]:應用程式(“客戶端”應用程式)所運行的機器,不一定是使用者本地的機器(顯示的“伺服器”)。X中所提及的“客戶端”和“伺服器”等字眼用詞也經常與人們一般想定的相反,“伺服器”反而是在使用者本地端的自有機器上運行,而非是在遠端的另一部機器上運行。
在圖例中,X伺服器從鍵盤、滑鼠端取得輸入資訊,之後將輸入反饋顯示於銀幕,而網頁瀏覽器及終端機模擬器則在用戶端的本機系統上運行。此外用戶端也通過網路與遠端的機器、伺服器保持聯繫,以保訊息狀態的更新。如此的機制及架構能使遠端運行的軟體如同在本機端運行一樣。伺服器和客戶端之間的通信協定的運作對計算機網路是透明的: 客戶端和伺服器可以在同一台計算機上,也可以不是, 或許其架構和作業系統也不同,但都能運行。客戶機和伺服器還能夠使用安全連線在網際網路上安全地通訊。
為了使遠端客戶程式顯示到本地伺服器,用戶一般需要啟動一個終端視窗和到達遠端計算機的telnet或者ssh,令其顯示到用戶計算機,(例如:在運行bash的遠端計算機上export DISPLAY=[用戶的計算機]:0)然後啟動客戶端。 然後客戶端就會連線到本地計算機,並且遠端應用程式會顯示到本地螢幕並被本地輸入設備所控制。與之對應,本地計算機上也可以執行一個連線到遠端計算機的小型代理程式,並在該端啟動與運行自有需求與指定的應用程式。
實際的遠端客戶端的例子有:圖形化管理遠程計算機;在遠端UNIX計算機上運行計算密集的仿真程式並把結果顯示到本地的Windows桌面計算機;用一套顯示器、鍵盤和滑鼠控制同時運行在多台計算機上的圖形化軟體。

X的設計原則

X的設計原則,早在最初仍在麻省理工學院的階段(1984年)就已經成形,由Bob Scheifler和Jim Gettys兩人制訂出X最早的開發、強化、改進原則,原則大體如下:
除非沒有它就無法完成一個真正完整的應用程式,否則不用增加新的功能。
決定一個系統不是什麼和決定它是什麼同樣重要。與其去適應整個世界的需要,寧可使得系統可以擴展,如此才能以持續相容的方式來滿足新增需求
只有完全沒實例時,才會比只有一個實例來的糟。
如果問題沒完全弄懂,最好不要去解決它[3]
如果預期要用90%的努力去完成10%的工作,應該用更簡單的辦法解決。(參見:更糟就是更好。)
儘量避免複雜性。
提供機制而不是策略,有關使用者接口的開發實現,交給實際套用者自主。
之後,上述原則中的第一項原則在設計X11時被加以修改,修訂成:“除非已有真正的應用程式,真的需要X為其修訂、增訂等支援,否則不會為X增加新功能。”X基本上一直遵循這些原則,參考實現的擴展及改進也是以此原則的角度來著手,也因為奉行上述原則,使至今的最新版X仍能與最初(1987年)發布的協定標準近乎完全相容。
在OpenVMS 7.3-1上運行的DECwindows CDE
[編輯本段]使用者界面
X刻意不去規範應用程式在使用者界面上的具體細節設計,這些包括按鈕、選單和視窗的標題欄等等,這些都由視窗管理器(window manager)、GUI構件工具包、桌面環境(desktop environment)或者應用程式指定的GUI(如POS)等等的用戶軟體來提供,然而因為架構設計上保留了高度的彈性發揮空間,致使多年來X在“基礎、典型、一般性”的使用者接口上,也都有數目驚人的多樣性選擇。
在X的系統架構中,視窗管理器用於控制視窗程式的位置和外觀,其界面類似Microsoft的Windows或者Macintosh(例如:KDE的kwin或者GNOME的Metacity),不過在控制機制上卻截然不同(例如:X提供的基本視窗管理器twm)。視窗管理器可能只是個框架(例如:twm),但也可能提供了全套的桌面環境功能(例如:Enlightenment)。
雖然不同的X使用者接口可以有很大的差距、差異,然而絕大多數的用戶在使用X時,多是用已經高度全套化的桌面環境,桌面環境不僅有視窗管理器,還具備各種應用程式以及協調一致的界面,目前最流行的桌面環境是GNOME和KDE,此兩者已普遍使用於Linux作業系統上,而UNIX所用的標準桌面環境多是通用桌面環境(CDE),然而也有些UNIX也開始採行GNOME。
此外,X桌面環境及組件雖然極其多樣,但同時也需要保持相容性與互通性,關於此則有freedesktop.org積極與努力地維持各種不同X桌面環境的相容性,使相競態勢下仍不失X的相容本色。

實現

X的標準實現是X.Org的參考實現。由於其許可證比較寬鬆,出現了大量自由的或者專有的實現。商業的UNIX商家傾向於採用參考實現並使之適應其硬體,例如高度定製並加入專有的擴展。
直到2004年,在自由的類UNIX系統上最常見的X變體是XFree86。顧名思義,它源於X的386兼容的PC機的移植,到了上個(20)世紀90年代末期成為X的技術創新的主要來源和X開發的事實標準[4]。但是從2004年起,最流行的X伺服器是XFree86的分支—X.Org的參考實現。
雖然X一般和UNIX聯繫在一起,X伺服器也能夠自然地存在於其他圖形環境。DEC/COMPAQ/HP的OpenVMS作業系統用X加上CDE做為起標準桌面環境,稱為DECwindows。蘋果公司的Mac OS X v10.3(研發時的代號:Panther,美洲豹)包括Apple X11,它基於XFree86 4.3和X11R6.6,並能和Mac OS X更好地集成。
Microsoft的Windows本身不包含對X的支持,但是有不少第三方的實現可用,其中有自由軟體如Cygwin/X、Xming、WeirdMind[5]和WeirdX,另外專有、專屬性的也有XManager、X-Deep/32、X-Win32、WiredX 和 Exceed。它們多用於控制遠程X客戶端。
當X寄生在其他視窗系統(例如:Windows或Mac OS)時,X系統一般是“rootless,無根”的,也就是說:宿主(主體)視窗系統擔當根視窗(背景和相關選單)並管理寄生(客體)的X視窗的位置。但是也有些伺服器,例如Exceed,能夠在宿主系統上創建根視窗使得遠程客戶端能夠做為分離的視窗在其上顯示。
[編輯本段]終端機
X終端機(X Terminal)是做為瘦客戶機在X伺服器上運行的專用硬體。該架構廣泛用於為了使多人同時使用同一個大型伺服器而構造終端。這也符合MIT的計畫的初衷。
X終端搜尋網路,使用XDMCP產生允許其運行客戶機的主機列表。初始主機需要運行X顯示管理員(X display manager)。
專用的X終端機(硬體)現在已經不太常見了,現在經常使用個人計算機並搭配運行X終端機的實效模擬程式(Emulator)來完成相同的功能,過去(1990年代初期)業界在推行X終端機時也將其稱為“窮人的UNIX工作站”。
[編輯本段]X的局限和批評
在《UNIX痛恨者手冊》(UNIX-HATERS Handbook)一書中有個章節為:"X 視窗所造成的災禍(The X-Windows Disaster)"[6],該書用此整個章節的篇幅內容來討論 X 在20世紀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,也於事無補。長久以來這已經成為用戶和程式設計師的巨大的挫折的源頭[7]。目前,程式的感觀一致性和通信一般是通過為特定桌面環境或者構件工具箱編程來處理,這也避免了直接和ICCCM接觸。
X缺乏良好的網路與透明的聲音系統。當用戶對聲音日益期盼時,各種不兼容的聲音子系統便出現了。過去,大多數程式設計師只好忽略網路問題,簡單地使用本地的並且是OS專用的聲音API。第一代客戶機-伺服器聲音系統有rplay和Network Audio System。而最近的努力產生了EsounD(GNOME)和ARts(KDE),而這也並非標準。而其他系統如Media Application Server則正在開發當中。
直到最近,X也沒有好的列印顯示器所顯示的內容(所見即所得)的解決方案。許多X客戶機完全用PostScript實現列印,而這與傳送到伺服器的幾乎整個是分離的。從X11R6.3起包含了Xprint,此時客戶機已經不錯,但是伺服器實現還不行。而從X11R6.8起實現的質量已經很好[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也類似。 現在主要的開銷來自於客戶機和伺服器之間的網路往返延遲(非協定本身產生的滯後時間),應該通過應用程式的設計來處理[9]。

X的競爭者

X在類UNIX系統上幾乎完全占據統治地位。但是仍然有人嘗試提供替代品和更多的選擇。過去曾經有Sun的NeWS,但它遭到市場淘汰;還有NeXT的Display PostScript,它最終轉變為蘋果電腦的Mac OS X內的Quartz。
應對對於X的批評的更前衛的嘗試有Berlin/fresco和Y Window System這樣的完全替換。這些代用品被認為不值得採用,而任何不能做到與X向後兼容的的替代品的可行性都被廣泛置疑。
其他有的競爭者通過直接操作硬體來避免X的開銷,這樣的項目包括DirectFB。但是由於DRI正在致力於使用可靠的核心級接口提供幀緩衝,這些努力可能變成是多餘的。
其他以圖形終端服務形式達到網路透明性的嘗試還有VNC(很底層的系統,通過網路傳送壓縮的點陣圖;UNIX上的實現包括X伺服器)、Citrix MetaFrame(類似X的Windows軟體)、tarantella(為網路瀏覽器提供Java客戶機)和NX技術(用於遠程顯示的節省頻寬的協定)。
[編輯本段]歷史
事實上,早在X出現前已有幾個點陣圖式的軟體顯示系統已經存在,例如帕洛阿爾托研究中心(施樂公司)提出的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年的構想,當作為雅典娜工程的吉姆·給提(Jim Gettys)和MIT計算機科學實驗室的鮑伯·斯凱夫勒(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正準備要推出它的第一個ULTRIX工作站,且X是唯一最有希望即時準備妥當的視窗系統。於是X6被移植到MicroVAX的DEC QVSS顯示器。
1985年第二季,為了支持DEC的VAXstation-II/GPX增加了色彩支持,由此形成了版本9。儘管MIT此前已經免費許可X6給一些外部群體,它此時決定在後來演變為MIT授權的許可證下發放對X9和後續版本。X9於1985年9月發布。
布朗大學的一些人將版本9移植到IBM RT/PC,為了讀取RT的非對齊數據對協定做了不兼容的修改,導致1985年稍後發布版本10。1986年有若干外部團體對X提出需要。X10R2發布於1986年1月。1986年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最終於1987年9月15日發布。
X11協定設計由Scheifler領導,並在nascent Internet的開放郵件列表上廣泛討論。於是X成為最早的較大規模的開源軟體項目之一。
MIT X協會與X協會公司
1987年,隨著X11取得明顯成功,MIT希望免除X的管理責任。但是1987年6月與9個廠商舉行會晤,這些廠商表示他們相信為了避免 X 由於商業因素而分裂,需要中立方的參與。1988年1月,X協會(X Consortium)做為非營利廠商團體而成立,由Scheifler擔任主管,而Keith Packard擔任高級開發人員,確保 X 能持續以中立超然的立場提供商業與學術教育所需的開發。此後MIT X協會(MIT X Consortium)完成了一系列重要的X11版本,第一個就是1988年1月的版本2(X11R2)。
1993年,X協會公司(X Consortium, Inc.;非營利性質的公司)做為MIT X協會的接繼者而成立。它於1994年5月16日發布了X11R6。1995年X協會公司接手了UNIX系統的Motif工具箱和CDE(Common Desktop Environment)共通桌面環境。而原有的X協會在發布了最後一個版本的X11R6.3後,於1996年末解散。

開放團體

1997年中,X Consortium將X的管理交給開放團體(The Open Group),而它是1996年由開源軟體基金會(Open Software Foundation;OSF)和X/Open合併成立的廠商團體。
開放團體於1998年首次發布X11R6.4。為了確保 X 開發上的資金,所以X11R6.4偏離傳統的自由許可條款,進而引起爭議[10]。新條款阻礙了許多項目(例如:XFree86)採納它,甚至包括一些廠商。在XFree86以分離相威脅後[11],X11R6.4於1998年9月在傳統許可條款下發布[12],而開放團體的最後一個發布是X11R6.4 patch 3,即第三度發布的補丁。
X.Org
1999年5月開放團體組建了X.Org。X.Org指導了X11R6.5.1之前的版本發布。在此期間X的開發死氣沉沉[13]。2003年,隨著Linux的流行X被大量安裝。但是X.Org幾乎無聲無息,活躍的開發由XFree86承擔。[14]
XFree86
主條目:XFree86
在1989年至1990年期間,托馬斯·羅爾把X11R4分類器上提供的X伺服器程式的原始碼下載到運行速度僅為33MHz的386PC 上,成功運行了被他稱為是X38611.1的X伺服器。這就是XFree86的雛形。
1992年後多數技術創新都發生在XFree86項目中。1999年,由於眾多對於XFree86在Linux上套用有興趣的硬體廠商[15]的推動,並也已經成為最普及的X版本,XFree86成為X.Org的榮譽成員(不付費)[16]。
但是自2003年開始,XFree86內部卻發生了爭論。它被認為太教堂式了,如同它的開發模式; 開發者不能通過CVS做提交[17],而廠商被迫維護大量補丁[18]。2003年3月,自從最初的MIT X Consortium結束之後就參加XFree86的Keith Packard由於被認為態度不良而被驅逐[19][20] [21]
X.Org和XFree86開始討論能夠有助於X開發的重組[22][23][24]Jim Gettys早在2000年就熱心於開放的開發模式[25]。Gettys、Packard和其他幾個人開始討論有效管理X和開發式開發的細節。
最終就像是X11R6.4許可證爭議的迴響,XFree86於2004年2月在更加嚴格許可證下發布了4.4 。許多依賴X的項目認為該許可證無法接受[26],特別是它和GNU General Public License[27]不兼容。 這引起一場論戰,許多人認為到了該對XFree86分叉(fork)[28]的時候了,許多Linux發行版,包括Fedora、gentoo都紛紛在最新的版本中使用X.Org基金會的發布代替XFree86。
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的開發者[29]。
2004年9月X11R6.8發布。它加入重要的新特性,包括對半透明視窗的初步支持、很多複雜的視覺效果、螢幕放大和簡圖,以及與3D沉浸式顯示系統(例如Sun的Project Looking Glass和croquet project)集成的設施。而外觀策略由稱為合成管理器(compositing managers)的外部應用程式提供。
未來方向
有了X.Org基金會和freedesktop.org,X的開發再度加速。目前和未來的版本都將是可使用的最終產品,而不僅僅是在其上構築產品的骨架。
隨著硬體操作被移入核心,幾乎對視頻硬體的訪問將通過OpenGL(沒有硬體OpenGL的系統使用Mesa)和基層直接渲染模組進行[30]。這由XFree86 version 4引入並出現在X11R6.7及其後續版本。
參考實現的架構被模組化,每個獨立模組做為分離的項目維護。X11R6.9將是單體原始碼而X11R7.0將有具備相同特徵集的模組化原始碼。[31]。
寫法、稱呼上的誤混
“X Window系統”一般也簡稱成“X11”或“X”,而“X Windows”的稱寫方式(類似“Microsoft Windows”的稱寫)並沒有被正式認可,不過這種誤會的稱寫法卻經常很普遍且經常出現(例如在UNIX-HATERS Handbook一書中)。

歷史發布

版本 發表日期 重大變更
X1 1984年6月 首次使用"X"作為稱呼;基金會自此將W與X區隔。
X6 1985年1月 首版授權給若干的外部公司。
X9 1985年9月 彩色化,以及首次以MIT授權方式發布。
X10 1985年後期 開始能在IBM RT/PC、IBM PC AT(使用DOS作業系統)以及其他硬體上運行。
X10R2 1986年1月
X10R3 1986年2月 首次在MIT之外發布。uwm使視窗管理員(Window Manager)程式標準化。
X10R4 1986年12月 發布X10的最後一版。
X11 1987年9月15日 首次發布現有X Window系統所用的協定(Protocol)。
X11R2 1988年 以X協會(Consortium)之名的首次發布。[32]
X11R3 1988年10月25日 發布XDM。
X11R4 1989年12月22日 XDMCP、twm成為標準的視窗管理員(Window Manager)程式,同時強化應用程式、發布Shape extension及新的字型。
X11R5 1991年12月5日 發布PEX、Xcms (色彩管理功用)、字型伺服器、X386。
X11R6 1994年5月16日 發布ICCCM v2.0;Inter-Client Exchange(用戶端間的交換);X Session Management(行程管理程式);X Synchronization extension(同步機制延伸程式);X Image extension(影像延伸程式);XTEST extension(XTEST延伸程式);X Input(輸入用程式);X Big Requests;XC-MISC;變更XFree86。
X11R6.1 1996年3月14日 發布X Double Buffer extension(雙重緩衝延伸程式);X keyboard extension(鍵盤延伸程式);X Record extension(記錄延伸程式)。
X11R6.2
X11R6.3(研發代號:Broadway,百老匯) 1996年12月23日 發布Web功能功效、LBX。以X協會之名的最後一次發布。X11R6.2是X11R6.3的子集合(subset),X11R6.3隻針對原有X11R6.1進行特點強化,如XPrint以及可以直書的Xlib,以及可由使用者進行特性定義。[33]
X11R6.4 1998年3月31日 發布Xinerama。[34]
X11R6.5 X.org的一次內部發布,沒有對外公開。
X11R6.5.1 2000年8月20日
X11R6.6 2001年4月4日 修復錯誤、變更XFree86。
X11R6.7.0 2004年4月6日 首次由X.Org基金會進行發布,此一發布新增了XFree86 4.4rc2。此外也有完整的末端用戶的發行版本。移除XIE、PEX及libxml2[35]
X11R6.8.0 2004年9月8日 發布Window translucency、XDamage、分散式多頭X、XFixes、Composite、XEvIE等。
X11R6.8.1 2004年9月17日 修補libxpm的安全防護功效。
X11R6.8.2 2005年2月10日 修補錯誤,更新驅動程式。
X11R6.9
X11R7.0 2005年12月21日 發布EXA,主要的原始程式碼進行再拆解、組構[36],以相同的原始程式碼為基礎,衍生出模組化的7.0版以及一體性、團塊性的6.9版。
X11R7.1 2006年5月22日 強化EXA,集成Kdrive、Aiglx強化作業系統及平台的支援性。[37]
X11R7.2 2006年 移除LBX。[38]
[編輯] 參見
圖形使用者接口的歷史(History of the graphical user interface)
視窗系統(Windowing system),針對一般的終端機。
X Window系統的協定和架構(X Window System protocols and architecture)
X Window核心協定(X Window core protocol),功效機制等制訂、定義。
X視窗管理器(X window manager),軟體的建立原則。
用戶之間的通訊對話說明書(Inter-Client Communication Conventions Manual),政策原則標準依據。
X11顏色名稱(X11 color names),相關的歷史零星事物。
XGL,針對較現代、先進的顯示卡而設計的 X 伺服器架構。
General Graphics Interface,簡稱GGI。一般性、共通性的圖形、圖像接口。
AIGLX,全稱Accelerated Indirect GLX,X.Org基金會與Fedora Core Linux社群共同發起的開放原碼專案,被期望以間接方式加速GLX的繪圖著色功效。
VirtualGL,用於遠端顯示的程式,可顯示立體(3D)呈現的應用程式,且能發揮運用顯示卡的硬體加速著色功效。
Y Window System,也稱Y-Windows,是一套視窗系統,由一個視窗伺服器與一個用戶端函式庫所組成,同時也是一套可供應用程式撰寫者呼用的應用程式接口。
SAX2,也稱YaST(Yet Another Setup Tool),一種作業系統設定及配置的工具程式。
UNIX程式列表(List of UNIX programs)

相關詞條

相關搜尋

熱門詞條

聯絡我們