X Window核心協定
維基百科,自由的 encyclopedia
X Window 核心協定[1][2][3]是X視窗系統的基礎協定,它是一個以點陣圖顯示的網路化視窗系統,用來在Unix、類Unix和其他作業系統上建立使用者圖形介面。X Window 系統基於主從式模型:單一伺服器控管硬體的輸出入,如螢幕、鍵盤和滑鼠;所有的應用程式都被視作客戶端,使用者之間透過伺服器來互動。互動部分由X Window核心協定來管理。還有其他與X視窗系統有關的協定,有的建立在X Window核心協定之上的,有的是獨立的協定。
在X Window核心協定中,只會在網路上以非同步方式傳送四種封包:請求、回應、事件和錯誤。請求是由客戶端傳送到伺服器,告之進行一些動作(例如建立一個視窗),並回傳以便持握的資料。回應是由伺服器回傳的若干資料。事件是由伺服器傳送的,其用來通知客戶端某些使用者的動作,或者發生了其他所關心的事件。錯誤是由伺服器傳送的封包,其用來通知客戶端,在處理其請求時,發生了一些錯誤。請求有可能產生回應、事件和錯誤;除此之外,協定並不要求封包中的特定指令要以網路來傳送。還有其他對核心協定的擴充,這些擴充有自己的請求、回應、事件和錯誤。
X Window 源於1984年的麻省理工學院(目前所發佈的 X11 發表於1987年9月)。設計者鮑伯·斯凱夫勒(Bob Scheifler)和吉姆·傑提斯(Jim Gettys)早期對核心協定的原則是「機制,而非策略」,所以核心協定並未規定客戶端之間以及客戶端和使用者之間的互動介面規範。這部分則由其他的獨立規格[4]所規範,如ICCCM、freedesktop.org規範,且可由所使用的特定組件工具包自動強制執行。