<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > GNOME是怎樣利用CORBA在 Linux上創(chuàng)造分布式平臺的

          GNOME是怎樣利用CORBA在 Linux上創(chuàng)造分布式平臺的

          作者: 時間:2010-08-25 來源:網(wǎng)絡(luò) 收藏

            和類Unix上的桌面環(huán)境,是GNU的一個把自由軟件的好處帶給最終用戶的開放源碼項目。對于它,人們往往只關(guān)注它的漂亮的外觀和給使用 帶來的便利性,很少注意背后支撐它發(fā)展的GTK繪圖技術(shù)和技術(shù)。其實,這兩項技術(shù)對的開發(fā)和應(yīng)用是至關(guān)重要 的:GTK繪圖技術(shù)給應(yīng)用程序帶來統(tǒng)一的外觀和一致的感覺;技術(shù)為在平臺上組合軟件和復(fù)合文檔提供了可能,而這 是一個現(xiàn)代的受歡迎的圖形應(yīng)用操作平臺必不可少的部分,這也是Windows和MacOS成功的關(guān)鍵。本文主要介紹GNOME是在 Linux上平臺的。

          本文引用地址:http://www.ex-cimer.com/article/151625.htm

            GNOME 是GNU Network Object Model EnvirONment(GNU網(wǎng)絡(luò)對象模型環(huán)境)的縮寫。開發(fā)小組一開始的想法就是開發(fā)出Linux平臺的類似于Microsoft的OLE和 COM(它們是Windows平臺的分布式技術(shù))技術(shù)。只是隨著項目的開展,他們發(fā)現(xiàn)要實現(xiàn)這項技術(shù)有許多基礎(chǔ)工作要做,同時受KDE(Linux平臺的 另一個桌面系統(tǒng))的影響,于是這個項目的范圍逐漸擴大,出Linux平臺的漂亮的桌面。但是這個項目一開始的想法并沒有變,它指導(dǎo)著GNOME整個的 開發(fā)過程,成為這個項目成功的關(guān)鍵?,F(xiàn)在GNOME的發(fā)行版本都包括一個連接、嵌入系統(tǒng)Bonobo和一個快速、輕量級的CORBA2.2 ORB(對象請求代理)ORBit。

            計 算技術(shù)發(fā)展到今天,已經(jīng)進入分布式計算時代,CORBA、COM和Enterprise Javabean是當(dāng)今世界的三大分布式平臺開發(fā)標準。除CORBA是平臺無關(guān)外,COM應(yīng)用在Windows平臺、Enterprise Javabean應(yīng)用在JAVA平臺。因此GNOME要在Linux系統(tǒng)是分布式平臺,與CORBA的結(jié)合就是必然的。

            CORBA 是Common Object RequeST Broker Architecture(通用對象代理體系)的縮寫。它是一個軟件架構(gòu),定義了軟件對象如何能互相影響,而不管這些軟件對象是用什么編程語言書寫,運行 在什么樣的機器和操作系統(tǒng)上。要實現(xiàn)這些,CORBA定義了一系列對象之間進行通信的協(xié)議,如IIOP和GIOP。通信的中介是ORB (Object Request Broker),由ORB來管理對象之間的通信。CORBA的基本架構(gòu)如圖所示。

            


            CORBA的基本架構(gòu)示意圖

            Client發(fā)出方法調(diào)用消息,Stub進行封裝后發(fā)出,通過ORB轉(zhuǎn)到正確的Server對象,由Server對象的Skeleton對消息進行解析,還原成正確的方法調(diào)用,Server執(zhí)行后返回結(jié)果。

            由 于CORBA的目標是創(chuàng)造出一個分布式的系統(tǒng),因此,它還定義了一系列的服務(wù),如名字服務(wù)、安全服務(wù)等和一系列的基礎(chǔ)設(shè)施,包括水平基礎(chǔ)設(shè)施和垂直基礎(chǔ)設(shè) 施?,F(xiàn)在GNOME只實現(xiàn)了ORB和一些服務(wù),這很少的一部分對于創(chuàng)造一 個實現(xiàn)軟件組合和復(fù)合文檔的桌面系統(tǒng)來說是足夠了,這也從反面證明了CORBAGNOME平臺的發(fā)展空間是無限的。

            GNOME對CORBA進行支持是通過一系列封裝好的C語言函數(shù)庫來實現(xiàn)的。開發(fā)者這些函數(shù)庫進行CORBA分布式程序開發(fā)是非常方便的。

          下面就是3個和CORBA相關(guān)的系列函數(shù)庫。

            1.ORBit

            GNOME實現(xiàn)了一個CORBA2.2 ORB ORBit,這是一個快速的、高效率的ORB,它支持CORBA的C映射(C Mapping)。它還包括一個IDL(CORBA接口定義語言)編譯器。

            2.Libgnorba

            Libgnorba 提供了和CORBA相關(guān)的工具,如安全機制和對象激活機制。它提供了CORBA的初始化函數(shù),把CORBA的消息循環(huán)與GTK+的消息循環(huán)融合在一起。它 還實現(xiàn)了CORBA的名字服務(wù)。GOAD維護一個服務(wù)對象列表,提供一些函數(shù),可以很方便地將新的服務(wù)對象加入到GOAD中,把可用的Server對象列 出來,并激活其中的一個服務(wù)對象。

            3.Bonobo

            Bonobo 是和微軟以前的OLE技術(shù)相類似的一個復(fù)合文檔體系,例如,通過它,就可以把電子表格嵌入到文字處理文檔中去。GNOME將從底層支持它,這樣任何 GNOME應(yīng)用程序都可通過調(diào)用相應(yīng)的Bonobo組件來顯示MIME類型的數(shù)據(jù),例如純文本、HTML和圖像等。

            GNOME 的開發(fā)者們通過采用公開的標準和辛勤的開發(fā)工作,為我們展示了一個功能強大的分布式應(yīng)用平臺,隨著GNOME開發(fā)的完 善,GNOMELinux平臺戰(zhàn)勝Windows的時間不遠了。這個平臺也為我國軟件業(yè)的發(fā)展提供極大的機會,我們應(yīng)該在這個平臺上 有所作為?,F(xiàn)在最關(guān)鍵的是行動起來,開發(fā)應(yīng)用,推動應(yīng)用。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)


          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();