X-Window概述
對于普通用戶來說,操作系統最重要的功能,恐怕是能讓用戶方便的享用計算機硬件提供的各種資源,完成日常的工作了。絕大多數用戶對于Windows系統都非常熟悉,那么從用戶界面上而言,Linux到底有什么吸引人的地方呢?答案是他擁有X-Windows.下面就讓我們進入XWindows的繽紛世界,真正體會Linux的眩目光彩。
本文引用地址:http://www.eepw.com.cn/article/201609/304093.htm一、X Windows的簡史
X于1984年在麻省理工學院電腦科學研究所開始發展。當時Bob Scheifler正在發展分布式系統,同一時間DEC公司的JimGettys也在麻省理工學院做Athena計劃的一部分,兩個計劃都需要一個相同的東西--一套在Unix機器上優良的視窗系統。因此他們開始合作,從斯坦福大學得到了一套叫做W的實驗性視窗系統,因為是基于W視窗系統的基礎上開始發展,當發展到了足以和原先系統有明顯區別時,他們把這個新系統叫做X。
二、X的基本部件
X系統不像早期的視窗系統是把一堆同類軟件集中在一起,而是由三個相關的部分組合起來的。
(1) Server(服務器):控制實際顯示器和輸入設備的程序。Server是控制顯示器和輸入設備(鍵盤和鼠標)的軟件。Server可以建立視窗,在視窗中畫圖形和文字,響應Client程序的“需求”(requests),但他不會自己動作,只有在Client程序提出需求后才完成動作。
每一套顯示設備只對應一個唯一的Server,而且Server一般由系統的供應商提供,通常無法被用戶修改。對于操作系統而言,Server只是一個普通的用戶程序而已,因此很容易換個新的版本,甚至是第三方提供的原始程序。
(2) Client(客戶端):Client是使用系統視窗功能的一些應用程序。在X下的應用程序稱作Client,原因是他是Server的客戶,他要求Server響應他的需求完成特定的動作。
Client無法直接影響視窗或顯示,他們只能送一個請求(request)給Server,由Server來完成他們的請求。典型的請求通常是“在某個視窗中寫Hello World的字符串”,或者從A到B畫一條直線。
Client的功能大致可分為這么兩部分:向Server提“需求”只是他的一部分功能,其他的功能是為用戶執行程序而準備的。例如輸入文字信息、作圖、計算等等。通常,Client程序的這一部分是和X獨立的,他對于X幾乎不需要知道什么。通常,應用程序(特別是只大型的標準繪圖軟件、統計軟件等)對許多的輸出設備具有輸出的能力,而在X視窗中的顯示只是Client程序許多輸出格式中的一種,所以,Client程序中和X相關的部分在整個程序中只占非常小的一部分。
用戶可以通過不同的途徑使用Client程序:通過系統提供的程序來使用;使用來自于第三方的軟件;或者是用戶自己為了某種特殊應用而編寫的自己的Client程序。
(3) 通訊通道:有了Server和Client,他們之間就要傳輸一些信息,這種傳輸信息的媒介就是我們所要介紹的X的第三個組成部件:通訊通道。憑借這個通道,Client傳送“需求”給Server,而Server回傳狀態(status)及其他一些信息給Client。
Client是使用函數庫來使用通訊通道的。在系統或網絡上支持通訊形態需求的是內建于系統的基本的X視窗函數庫(library)。只要Client程序利用了函數庫,自然就有能力使用所有可用的通訊方法。這時通道本身就變得不再重要了,而只是一個概念而已。
三、Server和Client之間的通訊
Server和Client通訊的方法大致有兩類,對應于X系統的兩種基本操作模式。 第一種,Server和Client在同一臺機器上執行,它們可以共同使用機器上任何可用的通訊方法做交互式信息處理。在這種模式下,X可以同其他傳統的視窗系統一樣,高效工作。第二種,Client在一部機器上運行,而顯示器和Server則在另一部機器上運行。因此兩者的信息交換就必須通過彼此都遵守的網絡協議進行,最常用的協議為TCP/IP協議。這種通訊方式一般被稱為網絡透明性,這也幾乎是X獨一無二的特性。
四、X的用戶界面
X的設計目標之一就是能創建許多不同形式的用戶界面。其他的是窗西同志提供具體的交互方法,而X只提供一般的架構,讓系統建立者建造所需的交互風格。這種特性使得開發者可以在X的基礎上建造全新的界面,并且可以在任何時刻根據自己的需要選用適當的界面。一般來說,用戶界面可以分為兩部分。管理界面也就是視窗管理器,是命令的最高層,他負責在屏幕上建構或重建視窗,改變視窗的大小、位置、或者將視窗改變成圖標等。應用界面確定了用戶和應用程序之間的交互風格,即用戶如何利用視窗系統的設備程序來控制應用程序及輸入資料給它。例如,如何用鼠標來選定一個選項。
五、X獨立于操作系統
X不是內置于操作系統,他只是比用戶層次稍高一些。在系統中它也是一個相對獨立的組件。這樣做有如下優點:
(1)易于安裝和改版,甚至去除。這種工作不需要重啟系統,也不會對其他應用程序造成干擾。
(2)第三方很容易支持并加強它的功能。例如你的制造廠商提供的系統不夠好,你可以向別人買更好或更快的版本。
(3)X不會制定操作系統,因此成為一種標準,這也是第三方發展軟件的原動力。
(4)為了發展者利益。在Server上進行工作時,如果程序異常中斷,只會影響到視窗系統,不會造成機器的損壞或操作系統核心的破壞。
您可能也感興趣:
為您推薦
8家險企股權被掛牌轉讓,為何險企股權不再被追捧?
深圳最低工資標準調整為2360元/月 失業保險金為2124元/月
遼寧實施失業保險省級統籌 對缺口核定等作出詳細規定
排行
最近更新
- 蕪湖釋放創新“N次方”效應 數字賦能驅動產業升級
- 去年快遞服務全程時限水平有較大提升 干線運輸時限縮短
- 住建部:推動長江經濟帶高質量發展,打造區域協調發展新樣板
- 江蘇發布重大項目清單 增資擴產項目明顯增多
- 山東抓投資抓項目 新興領域投資規模持續擴大
- Gucci在2月將投放 10 個“SuperGucci”NFT
- 美國銀行:美國CBDC將保持美元作為世界儲備貨幣的地位
- 美股三大指數尾盤集體轉漲
- 光伏發電概念股有哪些?光伏發電概念龍頭股一覽
- The new iPad屏幕對比評測
- 電源接通延時器
- 汽車電子穩定系統(ESP)詳解
- 聯想B520一體機拆解
- 焦炭相關股票有哪些?焦炭概念股票龍頭一覽
- 增強信號 3G無線上網卡改裝拆解全攻略
- 盤點全球五大智能手機生產商 華為聯想入圍
- 三星新平板 Galaxy Note 10.1全拆解
- 智能監控防盜報警系統
- 格力電器未來三年股東回報規劃:每年累計分紅不低于當年凈利潤50%
- 消息稱京東科技計劃2022年在港IPO,募資10億至20億美元
- 恒大集團:呼吁境外債權人不采取任何激進的法律行動
- 海航董事長劉璐因個人原因辭職,在海航已近28年
- 青青稞酒預計2021年營收增長30%-40%,四季度凈虧損超1500萬
- 2022年在港上市募資10億美元?京東科技:不予置評
- 財政部修訂出臺《財政行政處罰聽證實施辦法》
- 賣房子需要交什么稅?賣房子必須攜帶哪些證件?
- 醫??ǖ氖褂梅秶心男垦a牙可以使用醫保報銷嗎?
- 小產權房能過戶嗎?購買小產權房有什么風險?
- 奕東電子的實際控制人是誰?奕東電子股票上市了嗎?
- 百合股份是一家什么公司?百合股份的股票何時上市?