色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

Hi,歡迎來到嵌入式培訓(xùn)高端品牌 - 華清遠(yuǎn)見教育科技集團(tuán)<北京總部官網(wǎng)>,專注嵌入式工程師培養(yǎng)15年!
當(dāng)前位置: > 華清遠(yuǎn)見教育科技集團(tuán) > 嵌入式學(xué)習(xí) > 講師博文 > X-Window系統(tǒng)介紹
X-Window系統(tǒng)介紹
時(shí)間:2016-12-30作者:華清遠(yuǎn)見

一.X-Window系統(tǒng)簡(jiǎn)介

X-Window(也常稱為X11或X)系統(tǒng)是一種以位圖方式顯示的軟件視窗系統(tǒng),初是1984年麻省理工學(xué)院的研究,之后變成UNIX、類UNIX、以及OpenVMS等操作系統(tǒng)所一致適用的標(biāo)準(zhǔn)化軟件工具包顯示架構(gòu)的運(yùn)作協(xié)議。X Window系統(tǒng)通過軟件工具及架構(gòu)協(xié)議來建立操作系統(tǒng)所用的圖形用戶界面,此后則逐漸擴(kuò)展適用到各形各色的其他操作系統(tǒng)上,F(xiàn)在幾乎所有的操作系統(tǒng)都能支持與使用X。更重要的是,今日知名的桌面環(huán)境——GNOME和KDE也都是以X Window系統(tǒng)為基礎(chǔ)建構(gòu)成的。

二.X-Window的發(fā)展歷史

知曉過去才能明白現(xiàn)在,預(yù)見將來,我們需要清楚的了解X-Window的發(fā)展歷史,盡管這有些曲折。

1、 前身:

事實(shí)上,早在X出現(xiàn)前已有幾個(gè)位圖式的軟件顯示系統(tǒng)已經(jīng)存在,例如帕洛阿爾托研究中心(施樂公司)提出的Alto(1973年)和Star(1981年)、蘋果計(jì)算機(jī)提出的Lisa(1983年)和麥金塔(1984年)、在UNIX世界也有雅典娜工程(1982年)和Rob Pike的Blit終端機(jī)(1984年)。
1983年之前稱為W-Window系統(tǒng)的窗口系統(tǒng)是X的真正前身(在拉丁字母里面 X 直接接在 W 后面)。W-Window系統(tǒng)運(yùn)行于系統(tǒng)V之上,W使用一個(gè)支持終端機(jī)和圖形窗口的網(wǎng)絡(luò)協(xié)議,而服務(wù)器維護(hù)顯示的列表。

2、 起源:

X-Window于1984年在麻省理工學(xué)院(MIT)電腦科學(xué)研究室開始開發(fā)的,當(dāng)時(shí)Bob Scheifler正在發(fā)展分散式系統(tǒng)(distributed system),同一時(shí)間DEC公司的 Jim Gettys 正在麻省理工學(xué)院Athena計(jì)劃的一部分。兩個(gè)計(jì)劃都需要一個(gè)相同的東西——一套UNIX機(jī)器上運(yùn)行優(yōu)良的視窗系統(tǒng)。因此合作關(guān)系開始展開,他們從斯坦福(Stanford)大學(xué)得到了一套叫做W的實(shí)驗(yàn)性視窗系統(tǒng)。因?yàn)槭歉鶕?jù)W視窗系統(tǒng)的基礎(chǔ)開始發(fā)展的,當(dāng)發(fā)展到了足以和原先系統(tǒng)有明顯區(qū)別時(shí),他們把這個(gè)新系統(tǒng)叫做X。

3、版本發(fā)展歷史

版本

發(fā)表日期

重大變更

X1

1984年6月

    首次使用"X"作為稱呼;基金會(huì)自此將W與X區(qū)隔。

X6

1985年1月

    首版授權(quán)給若干的外部公司。

X9

1985年9月

    彩色化,以及首次以MIT授權(quán)方式發(fā)布。

X10

1985年后期

    開始能在IBM RT/PC、IBM PC AT(使用DOS操作系統(tǒng))以及其他硬件上運(yùn)行。

X10R2

1986年1月

 

X10R3

1986年2月

    首次在MIT之外發(fā)布。uwm使窗口管理員(Window Manager)程序標(biāo)準(zhǔn)化。

X10R4

1986年12月

    發(fā)布X10的后一版。

X11

1987年9月15日

    首次發(fā)布現(xiàn)有X Window系統(tǒng)所用的協(xié)議(Protocol)。

X11R2

1988年2月

    以X協(xié)會(huì)(Consortium)之名的首次發(fā)布。

X11R3

1988年10月25日

    發(fā)布XDM

X11R4

1989年12月22日

    XDMCPtwm成為標(biāo)準(zhǔn)的窗口管理員(Window Manager)程序,同時(shí)強(qiáng)化應(yīng)用程序、發(fā)布Shape extension及新的字體。

X11R5

1991年12月5日

    發(fā)布PEX、Xcms(色彩管理功用)、字體服務(wù)器、X386。

X11R6

1994年5月16日

    發(fā)布ICCCM v2.0;Inter-Client Exchange(用戶端間的交換);X Session Management(進(jìn)程管理程序);X Synchronization extension(同步機(jī)制延伸程序);X Image extension(圖像延伸程序);XTEST extension(XTEST延伸程序);X Input(輸入用程序);X Big Requests;XC-MISC;變更XFree86。

X11R6.1

1996年3月14日

    發(fā)布X Double Buffer extension(雙重緩沖延伸程序);X keyboard extension(鍵盤延伸程序);X Record extension(記錄延伸程序)。

X11R6.2
X11R6.3
(代號(hào):百老匯)

1996年12月23日

    發(fā)布Web功能功效、LBX。以X協(xié)會(huì)之名的后一次發(fā)布。X11R6.2是X11R6.3的子集合(subset),X11R6.3只針對(duì)原有X11R6.1進(jìn)行特點(diǎn)強(qiáng)化,如XPrint以及可以直書的Xlib,以及可由用戶進(jìn)行特性定義。

X11R6.4

1998年3月31日

    發(fā)布Xinerama

X11R6.5

 

    X.org的一次內(nèi)部發(fā)布,沒有對(duì)外公開。

X11R6.5.1

2000年8月20日

 

X11R6.6

2001年4月4日

    修復(fù)錯(cuò)誤、變更XFree86。

X11R6.7.0

2004年4月6日

    首次由X.Org基金會(huì)進(jìn)行發(fā)布,此一發(fā)布新增了XFree86 4.4rc2。此外也有完整的末端用戶的發(fā)行版本。移除XIE、PEX及l(fā)ibxml2

X11R6.8.0

2004年9月8日

    發(fā)布Window translucency、XDamage、分布式多頭X、XFixes、Composite、XEvIE等。

X11R6.8.1

2004年9月17日

    修補(bǔ)libxpm的安全防護(hù)功效。

X11R6.8.2

2005年2月10日

    修補(bǔ)錯(cuò)誤,更新驅(qū)動(dòng)程序。

X11R6.9
X11R7.0

2005年12月21日

    發(fā)布EXA,主要的原始代碼進(jìn)行再拆解、組構(gòu),以相同的原始代碼為基礎(chǔ),派生出模塊化的7.0版以及一體性、團(tuán)塊性的6.9版。

X11R7.1

2006年5月22日

    強(qiáng)化EXA,集成Kdrive、AIGLX,強(qiáng)化操作系統(tǒng)及平臺(tái)的支持性。

X11R7.2

2007年2月15日

    移除LBX。

X11R7.3

2007年9月6日

    XServer 1.4, Input hotplug, output hotplug (RandR 1.2), DTrace probes, PCI domain support.

X11R7.4

2008年9月23日

    XServer 1.5.1, XACE, PCI-rework, EXA speed-ups, _X_EXPORT, GLX 1.4, faster startup and shutdown.

X11R7.5

預(yù)計(jì)2009年6至9月

    XServer 1.7, XKB 2 and Xi 2, XGE, RandR 1.3 (GPU object), MPX, predictable pointer acceleration, DRI memory manager, DRI2, Shatter, further removal of obsolete libraries and extensions.

(注:X11協(xié)議設(shè)計(jì)由Scheifler,并在nascent Internet的開放郵件列表上廣泛討論。于是X成為早的較大規(guī)模的開源軟件項(xiàng)目之一)

4、 對(duì)X-Window的管理歷史

1)MIT X協(xié)會(huì)與X協(xié)會(huì)公司

1987年,隨著X11取得明顯成功,MIT希望免除X的管理責(zé)任。但是1987年6月與9個(gè)廠商舉行會(huì)晤,這些廠商表示他們相信為了避免 X 由于商業(yè)因素而分裂,需要中立方的參與。1988年1月,X協(xié)會(huì)(X Consortium)做為非營(yíng)利廠商團(tuán)體而成立,由Scheifler擔(dān)任主管,而Keith Packard擔(dān)任高級(jí)開發(fā)人員,確保 X 能持續(xù)以中立超然的立場(chǎng)提供商業(yè)與學(xué)術(shù)教育所需的開發(fā)。1993年,X協(xié)會(huì)公司(X Consortium, Inc.;非營(yíng)利性質(zhì)的公司)做為MIT X協(xié)會(huì)的接繼者而成立

2)開放團(tuán)體

1997年中,X Consortium將X的管理交給開放團(tuán)體(The Open Group),而它是1996年由開源軟件基金會(huì)(Open Software Foundation;OSF)和X/Open合并成立的廠商團(tuán)體。

3)X.Org

1999年5月開放團(tuán)體組建了X.Org。X.Org指導(dǎo)了X11R6.5.1之前的版本發(fā)布。在此期間X的開發(fā)死氣沉沉。2003年,隨著Linux的流行X被大量安裝。但是X.Org幾乎無聲無息,活躍的開發(fā)由XFree86承擔(dān)。

4)XFree86

在1989年至1990年期間,托馬斯?羅爾把X11R4分類器上提供的X服務(wù)器程序的源代碼下載到運(yùn)行速度僅為33MHz的386PC 上,成功運(yùn)行了被他稱為是X38611.1的X服務(wù)器。這就是XFree86的雛形。

1992年后多數(shù)技術(shù)創(chuàng)新都發(fā)生在XFree86項(xiàng)目中。1999年,由于眾多對(duì)于XFree86在Linux上應(yīng)用有興趣的硬件廠商的推動(dòng),并也已經(jīng)成為普及的X版本,XFree86成為X.Org的榮譽(yù)成員(不付費(fèi))。

但是自2003年開始,XFree86內(nèi)部卻發(fā)生了爭(zhēng)論。它被認(rèn)為太教堂式了,如同它的開發(fā)模式;開發(fā)者不能通過CVS做提交,而廠商被迫維護(hù)大量補(bǔ)丁。2003年3月,自從初的MIT X Consortium結(jié)束之后就參加XFree86的Keith Packard由于被認(rèn)為態(tài)度不良而被驅(qū)逐

X.Org和XFree86開始討論能夠有助于X開發(fā)的重組Jim Gettys早在2000年就熱心于開放的開發(fā)模式。Gettys、Packard和其他幾個(gè)人開始討論有效管理X和開放式開發(fā)的細(xì)節(jié)。

終就像是X11R6.4許可證爭(zhēng)議的回響,XFree86于2004年2月在更加嚴(yán)格許可證下發(fā)布了4.4 。許多依賴X的項(xiàng)目認(rèn)為該許可證無法接受,特別是它和GNU General Public License不兼容。 這引起一場(chǎng)論戰(zhàn),許多人認(rèn)為到了該對(duì)XFree86分叉(fork)的時(shí)候了,許多Linux發(fā)行版,包括Fedora、Gentoo都紛紛在新的版本中使用X.Org基金會(huì)的發(fā)布代替XFree86。

5)X.Org基金會(huì)

2004年年初X.Org基金會(huì)成立。這意味著 X 在管理上的根本轉(zhuǎn)變。1988年以來 X 的管理者(包括過去的X.Org)都是廠商組織,而基金會(huì)由軟件開發(fā)者,采用依靠外部參與的集市模式的社區(qū)開發(fā)。其成員身份對(duì)個(gè)人開放,法人成員則成為贊助者。X.Org還開始同freedesktop.org密切合作

三.X的設(shè)計(jì)原則

X的設(shè)計(jì)原則,早在初仍在麻省理工學(xué)院的階段(1984年)就已經(jīng)成形,由Bob Scheifler和Jim Gettys兩人制訂出X早的開發(fā)、強(qiáng)化、改進(jìn)原則,原則大體如下:
1、除非沒有它就無法完成一個(gè)真正完整的應(yīng)用程序,否則不用增加新的功能。 
2、決定一個(gè)系統(tǒng)不是什么和決定它是什么同樣重要。與其去適應(yīng)整個(gè)世界的需要,寧可使得系統(tǒng)可以擴(kuò)展,如此才能以持續(xù)兼容的方式來滿足新增需求 
3、只有完全沒實(shí)例時(shí),才會(huì)比只有一個(gè)實(shí)例來的糟。 
4、如果問題沒完全弄懂,好不要去解決它
5、如果可以通過10%的工作量得到90%的預(yù)期效果,應(yīng)該用更簡(jiǎn)單的辦法解決。 
6、盡量避免復(fù)雜性。 
7、提供機(jī)制而不是策略,有關(guān)用戶界面的開發(fā)實(shí)現(xiàn),交給實(shí)際應(yīng)用者自主。(這和驅(qū)動(dòng)開發(fā)的思想一脈相承)

之后,上述原則中的第一項(xiàng)原則在設(shè)計(jì)X11時(shí)被加以修改,修訂成:“除非已有真正的應(yīng)用程序,真的需要X為其修訂、增訂等支持,否則不會(huì)為X增加新功能。”X基本上一直遵循這些原則,參考實(shí)現(xiàn)的擴(kuò)展及改進(jìn)也是以此原則的角度來著手,也因?yàn)榉钚猩鲜鲈瓌t,使至今的新版X仍能與初(1987年)發(fā)布的協(xié)議標(biāo)準(zhǔn)近乎完全兼容。

這些原則性的東西短短幾句話,就為一個(gè)龐大項(xiàng)目奠定了一個(gè)良好的基調(diào)和發(fā)展方向,使X問世以來經(jīng)久不衰,沒有這幾個(gè)原則是做不到的。

四.X-Window的功能

注:這部分內(nèi)容轉(zhuǎn)載自//blog.csdn.net/absurd/category/336948.aspx
        作者E-mail:xianjimli@hotmail.com

X-Window提供了一組非常底層的服務(wù),客戶端程序發(fā)送請(qǐng)求給X-Window, X Window根據(jù)請(qǐng)求完成相應(yīng)服務(wù)。通過這些服務(wù),客戶端程序可以構(gòu)建期望的用戶界面。根據(jù)不同的功能,可以把這些服務(wù)分為以下幾大類:

1、處理輸入

X-Window從鍵盤和鼠標(biāo)接受輸入,這些輸入數(shù)據(jù)被當(dāng)作”事件”傳送給適當(dāng)?shù)目蛻舳顺绦颉V劣谀膫(gè)窗口應(yīng)該接受到這些事件,是依賴于窗口管理器的(窗口管理器實(shí)際上也是一個(gè)客戶端),典型的事件包括按鍵,鼠標(biāo)移動(dòng),鼠標(biāo)按下/放開等。

輸入設(shè)備往往是與硬件平臺(tái)相關(guān)的,而且又是獨(dú)占資源,所以用X-Window管理是理所當(dāng)然的。應(yīng)用程序通常不需要關(guān)心具體的設(shè)備,只要處理相應(yīng)的事件就行了,像mouse和筆點(diǎn)可能發(fā)出同樣的事件,而應(yīng)用程序不用區(qū)分它們。輸入事件也可以通過XTest擴(kuò)展,由軟件模擬出來的(通常用來實(shí)現(xiàn)軟件鍵盤)

2、按層次形組織窗口

X-Window提供服務(wù)讓客戶端程序創(chuàng)建/銷毀窗口,所謂的窗口就是屏幕上的矩形區(qū)域,它是可以層層嵌套的,有很多操作可以作用于窗口(如,查詢或改變窗口的大小和位置等),X-Window的主要功能之一就是負(fù)責(zé)管理這種按層次形組織的窗口。

不過X-Window管理這些窗口是被動(dòng)進(jìn)行的,由窗口管理器根據(jù)用戶的行為決定。它請(qǐng)求X-Window做相應(yīng)的動(dòng)作,比如移動(dòng)窗口,調(diào)整窗口的大小,改變窗口的前后關(guān)系等等。第一次接觸X-Window時(shí),得知窗口管理器是一個(gè)普通的客戶端時(shí),我覺得驚訝,這種設(shè)計(jì)真是太先進(jìn)了,其實(shí)它正是遵循了提供機(jī)制而不是策略這一原則。

現(xiàn)在已經(jīng)有很多窗口管理器的實(shí)現(xiàn)可用,它們提供不同的風(fēng)格和功能,有的用于PC,有的用于嵌入式系統(tǒng),像matchbox就是在嵌入式上比較流行的,像Nokia的N770/N800就是用的matchbox。

3、提供圖形操作

X-Window提供了一些基本的畫圖操作,如畫直線、矩形、圓弧和多邊形等。 這些圖形的顏色、線寬、填充類型都可以由客戶端程序指定。X-Window同時(shí)提供了許多位圖操作,這些位圖操作可以作用于了窗口的各個(gè)區(qū)域。

X-Winwod還會(huì)充分挖掘硬件的加速特性,像填充、畫直線和圖像疊加等操作,如果硬件支持相應(yīng)的加速功能,就可以通過硬件實(shí)現(xiàn),否則就用軟件實(shí)現(xiàn)。

4、提供文本和字體操作

X-Window提供了字體相關(guān)的操作。客戶端程序可以請(qǐng)求X-window在指定的區(qū)域用指定的字體顯示指定的字符串,當(dāng)然在此之前應(yīng)該請(qǐng)求X-window加載字體,加載后客戶端程序可以得到關(guān)于字體的一些信息。

實(shí)際上,這一功能由于客戶端字體繪制的流行,而大大弱化了,現(xiàn)在的字體差不多都是在客戶端繪制好后,再通過X Render擴(kuò)展顯示到X-Window去的。在fontconfig/freetype/pango/cairo的幫助,在客戶端繪制字體更容易使用。

 

名詞解釋:

位圖:

位圖(Bitmap),又稱光柵圖(Raster graphics),是使用像素陣列來表示的圖像,每個(gè)像素的色彩信息由RGB組合或者灰度值表示。根據(jù)顏色信息所需的數(shù)據(jù)位分為1、4、8、16、24及32位等,位數(shù)越高顏色越豐富,相應(yīng)的數(shù)據(jù)量越大。其中使用1位表示一個(gè)像素顏色的位圖因?yàn)橐粋(gè)數(shù)據(jù)位只能表示兩種顏色,所以又稱為二值位圖。通常使用24位RGB組合數(shù)據(jù)位表示的的位圖稱為真彩色位圖。

視窗系統(tǒng):

視窗系統(tǒng)(Windowing system) 是“使用視窗當(dāng)作它的主要象征之一”的 圖形使用者接口的構(gòu)成元件。更為明確的說,是桌面環(huán)境的構(gòu)成元件。視窗系統(tǒng)支撐著視窗管理員的實(shí)現(xiàn)(implementation);對(duì)于“圖像硬件(graphics hardware)、指向裝置(pointing devices)比如鼠標(biāo)與鍵盤等裝置”提供基本支持。繪制鼠標(biāo)光標(biāo),一般也與視窗系統(tǒng)相關(guān)。

從程式設(shè)計(jì)師的觀點(diǎn)來看,視窗系統(tǒng)是作出繪圖的基本單位,比如字型繪制,或是在屏幕上劃線,有效地提供繪圖硬件的一種抽象概念。

視窗系統(tǒng)能讓電腦使用者同時(shí)與數(shù)個(gè)程式一起工作。每個(gè)程式在他自己的視窗中執(zhí)行,也就是屏幕上的矩形之中。大部份的視窗系統(tǒng)允許視窗重疊,且提供使用者執(zhí)行標(biāo)準(zhǔn)的操作,像是移動(dòng)/改變視窗尺寸,把視窗送到前景/背景,和小化/大化一個(gè)視窗。

有些視窗系統(tǒng),像是 X,有先進(jìn)的能力比如網(wǎng)絡(luò)通透性,允許使用者在遠(yuǎn)端機(jī)器上執(zhí)行圖形的應(yīng)用程式。

雅典娜工程:

雅典娜工程是MIT、DEC以及IBM的一個(gè)聯(lián)合工程,歷時(shí)八年,于1991年6月30日告一段落。該工程意圖建立一個(gè)計(jì)算機(jī)環(huán)境,容納多達(dá)一萬臺(tái)工作站,以及各種硬件。用戶可以訪問其中的任何工作站,存取任何文件、程序,但在用戶界面以及服務(wù)傳遞上,看起來不會(huì)有大的區(qū)別。

這個(gè)工程產(chǎn)生了許多現(xiàn)在被廣為使用的技術(shù),比如X Window System、Kerberos。雅典娜工程開發(fā)的其他技術(shù)包括Xaw部件工具箱、Zephyr通知服務(wù)、第一個(gè)即時(shí)通訊服務(wù),以及Hesiod名,還有目錄服務(wù)。

 

發(fā)表評(píng)論
評(píng)論列表(網(wǎng)友評(píng)論僅供網(wǎng)友表達(dá)個(gè)人看法,并不表明本站同意其觀點(diǎn)或證實(shí)其描述)
主站蜘蛛池模板: 日本一区二区三区精品视频在线观看 | 内射干少妇亚洲69XXX | 综合激情丁香久久狠狠 | 欲香欲色天天综合和网 | 中文字幕Va一区二区三区 | 色天天躁夜夜躁天干天干 | 一本久久伊人热热精品中文字幕 | 无遮挡午夜男女XX00动态 | 亚洲AV成本人无码网站 | 亚洲AV无码专区亚洲AV网站 | 人妻熟妇乱又伦精品视频无广告 | 性夜影院爽黄A爽AV 无码VR最新无码AV专区 | 男女啪啪免费观看无遮挡 | 精品无码欧美一区二区三区不卡 | 操欧美丝袜 | 免费A级毛片无码免费视频首页 | 国产成a人亚洲精品无码久久 | 综合自拍亚洲综合图区欧美 | www.五月天 | 中文字幕国 | 亚洲精品久久久久久久观小说 | 中文字幕一区二区三区5566 | a级大学生高潮片高清观看 jizz成熟丰满韩国女人 | 中文字幕人成乱码的注意事项 | 草草CCYY免费看片线路 | 日韩久久中文字幕 | 午夜男女爽爽爽免费播放 | 啊灬啊灬啊灬快灬高潮了听书 | 老熟妇性老熟妇性色 | 国产在线无码精品无码 | 丁香五月色情婷婷在线观看 | 少妇人妻挤奶水中文视频毛片 | 亚洲国产成人丁香五月激情 | 国产日本无码视频韩国网站写真 | 亚洲国产午夜精品理论片妓女 | 精品乱码久久久久久久 | 免费毛儿一区二区十八岁 | 男人天堂99 | 亚洲一区二区视频播放 | 精品久久久无码中字 | 日日躁你夜夜躁你av蜜 |