<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    jasmine214--love

    只有當你的內心總是充滿快樂、美好的愿望和寧靜時,你才能擁有強壯的體魄和明朗、快樂或者寧靜的面容。
    posts - 731, comments - 60, trackbacks - 0, articles - 0

    CORBA 的了解

    Posted on 2010-06-11 09:19 幻海藍夢 閱讀(128) 評論(0)  編輯  收藏 所屬分類: 通信產品--相關知識

    出處:http://www.huihoo.org/orbit/gnome_corba1/Corba-prog.html

    http://www.chinalinuxpub.com/doc/pro/corba.html

    *****************************************

    CORBA 是什么

      公用對象請求代理(調度)程序體系結構(Common Object Request Broker Architecture),縮寫為 CORBA,是對象管理組織(Object Management Group)對應當今快速增長的軟硬件的協同工作能力的要求而提出的方案。簡而言之,CORBA 允許應用程序和其他的應用程序通訊,而不論他們在什么地方或者由誰來設計。CORBA 1.1 由對象管理組織在 1991 年發布。他定義了接口定義語言(IDL)和應用編程接口(API),從而通過實現對象請求代理(ORB)來激活客戶/服務器的交互。CORBA 2.0 于 1994 年的 12 月發布。他定義了如何跨越不同的 ORB 提供者而進行通訊。

      ORB 是一個中間件,他在對象間建立客戶-服務器的關系。通過 ORB,一個客戶可以很簡單地使用服務器對象的方法而不論服務器是在同一機器上還是通過一個網絡訪問。ORB 截獲調用然后負責找到一個對象實現這個請求,傳遞參數和方法,最后返回結果。客戶不用知道對象在哪里,是什么語言實現的,他的操作系統以及其他和對象接口 無關的東西。

      在傳統的客戶/服務器程序中,開發者使用他們自己設計的或者公 認的標準定義設備之間的協議。協議的定義依賴于實現的語言,網絡的傳輸和其他許許多多因素。ORB 將這個過程簡單化。使用 ORB,協議定義是通過應用接口,而該接口是接口定義語言(IDL)的一個實現,他和使用的編程語言無關的。并且 ORB 提供了很大的靈活性。他讓程序員選擇最適當的操作系統,運行環境和設計語言來建設系統中每個組件。更重要的是,他允許集成已經存在的組件。

      CORBA 是在面向對象標準化和互操作性道路上的一個信號。通過 CORBA,用戶不必要知道軟硬件的平臺和他們處在企業網的什么地方就可以操作。

    ORB 結構

    下面我來用些圖形說明一下:

    通過 ORB 發送請求

    上面的圖形說明的是客戶端發送一個請求到對象的實現。客戶端是 希望對某對象執行操作的實體。對象的實現是一片代碼和數據來實際實現對象。ORB 負責下面的必要的機制:對該請求找到對象的實現,讓對象的實現準備好接受請求,和請求交換數據。客戶端的接口完全獨立于對象的位置,其實現的語言和其他不 影響對象接口的東西。

    ORB 接口的結構

    上面的圖形顯示的是一個獨立的對象請求代理(ORB)的結構。 ORB 的接口是灰色的矩形。箭頭說明 ORB 的調用關系。

    為了提出一個請求,客戶端可以使用動態調用接口(Dynamic Invocation Interface)(和目標對象的接口獨立)或者一個 OMG 的 IDL 占位程序(具體的占位程序依賴于目標對象的接口)。客戶端也可以直接和 ORB 在某些地方交互。

    對象的實現通過 OMG 的 IDL 產生的骨架或者是一個動態骨架的調用來接受請求。對象的實現可能在處理請求或其他的時候調用 ORB。

    對象接口定義的定義可以有下面兩種方式。接口可以通過接口定義 語言靜態的定義,這叫做 OMG 的 IDL。該語言按照可以進行的操作和該操作的參數定義對象類型。或者(也可以作為補充),接口可以加入到 Interface Repository service。該服務描述了該接口作為一個對象的組件,并允許運行時訪問這些組件。在任何 ORB 實現中,IDL 和 Interface Repository 有相同的表達能力。

    客戶端使用占位程序或者動態調用接口

    客戶端通過訪問對象的對象引用和了解對象的類型及要求執行的操 作來發布一個請求。客戶調用占位程序例程來請求或者動態構造請求。

    無論動態還是占位程序的接口都可以相同實現。接收方不可能知道 請求是如何發布的。

    對象的實現接受請求

    ORB 向對象實現定位適當的代碼,傳遞參數,傳輸控制。這一切都通過 IDL 骨架或者動態骨架。骨架對于不同的接口和對象適配器是不同的。在執行該請求的時候,對象的實現可能由 ORB 通過對象適配器來獲得一定的服務。當請求完成,控制和輸出值返回給客戶。

    對象的實現可能會選擇使用的對象適配器。該決定基于對象的實現 要求的服務。

    接口和 Implementation Repositories

    上圖說明的是接口和實現信息如何讓客戶和對象實現訪問的。接口 用 OMG 的 IDL 和/或 Interface Repository 定義。該定義用于產生客戶占位程序和對象的實現的骨架。

    對象的實現的信息在安裝時就提供好了,儲存在 Implementation Repository 中以便請求發布的時候使用。

    +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


    主站蜘蛛池模板: 久久亚洲av无码精品浪潮| 色妞WWW精品免费视频| 一个人免费观看www视频| 全免费一级午夜毛片| 亚洲av日韩专区在线观看| 国产免费变态视频网址网站| 国产精品亚洲一区二区在线观看| 在线观看免费成人| 相泽南亚洲一区二区在线播放| 成在线人永久免费视频播放| 久久综合图区亚洲综合图区| 久久99精品免费视频| 亚洲成人在线免费观看| 性xxxxx免费视频播放| 亚洲精华国产精华精华液| 一级毛片在线免费观看| 自怕偷自怕亚洲精品| 国产在线观看无码免费视频| 亚洲精品乱码久久久久久| 国产成人高清亚洲一区91| 亚洲av无码成人精品区在线播放 | 久久久久亚洲AV成人无码网站| 亚洲日韩精品无码专区加勒比☆| 免费看的黄色大片| 国产精品hd免费观看| 亚洲综合在线观看视频| 毛片在线全部免费观看| 亚洲另类图片另类电影| 成人永久免费福利视频网站| 久久国产美女免费观看精品| 亚洲日韩在线视频| 亚洲国产精品自在拍在线播放| 久久青草免费91线频观看不卡| 亚洲va在线va天堂成人| 免费少妇a级毛片| 9277手机在线视频观看免费| 国产亚洲欧美在线观看| 久久久久亚洲AV无码永不| 免费国产成人高清在线观看麻豆| 日韩电影免费观看| 国产精品亚洲专区一区|