




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
對象之間建立客戶端關系的中間件對象請求代理01定義功能請求代理體系結(jié)構(gòu)中間件概述作用概述目錄030502040607ORB的結(jié)構(gòu)CORBA在軟件無線電系統(tǒng)中的作用公共體系結(jié)構(gòu)(CORBA)目錄0908基本信息對象請求代理(ORB,ObjectRequestBroker)是對象之間建立客戶端/服務端(Client/Server)關系的中間件。使用ORB,客戶可以透明地調(diào)用一個服務對象上的方法,這個服務對象可以在本地,也可以在通過網(wǎng)絡連接的其他機器上。ORB截獲這一調(diào)用,同時負責查找實現(xiàn)服務的對象并向其傳遞參數(shù)、調(diào)用方法并返回最終結(jié)果。客戶并不知道服務對象位于什么地方、它的編程語言和操作系統(tǒng)是什么,也不知道不屬于對象接口的其他系統(tǒng)部分。這樣,ORB在異構(gòu)分布環(huán)境下為不同機器上的應用提供了互操作性,并無縫地集成了多種對象系統(tǒng)。對象請求代理(ObjectRequestBroker)是用戶提供與其他分布式網(wǎng)絡環(huán)境中對象通信的接口,是中間件(Middleware)中主要的一類,它在CORBA(CommonObjectRequestBrokerArchitecture)規(guī)范中處于核心地位,定義異構(gòu)環(huán)境下對象透明地發(fā)送請求和接收響應的基本機制,是建立對象之間client/server關系的中間件。它的作用在于提供一個通信框架,透明地在異構(gòu)的分布計算環(huán)境中傳遞對象請求。CORBA規(guī)范包括了ORB的所有標準接口。對象請求代理這個結(jié)構(gòu)不需要作為組件單獨實現(xiàn),它由接口定義。任何提供正確接口的ORB實現(xiàn)都是可被接受的。定義定義對象請求處理是在對象間建立客戶/服務器聯(lián)系的一種中間件。中間件概述中間件概述中間件是一種獨立的系統(tǒng)軟件或服務程序,分布式應用軟件借助這種軟件在不同的技術之間共享資源。中間件位于客戶機/服務器的操作系統(tǒng)之上,管理計算資源和網(wǎng)絡通訊。是連接兩個獨立應用程序或獨立系統(tǒng)的軟件。相連接的系統(tǒng),即使它們具有不同的接口,但通過中間件相互之間仍能交換信息。執(zhí)行中間件的一個關鍵途徑是信息傳遞。通過中間件,應用程序可以工作于多平臺或OS環(huán)境,能滿足大量應用的需要運行于多種硬件和OS平臺支持分布計算,提供跨網(wǎng)絡、硬件和OS平臺的透明性的應用或服務的交互支持標準的協(xié)議支持標準的接口。功能功能對象請求代理(ORB)是對象總線,它在CORBA規(guī)范中處于核心地位,定義異構(gòu)環(huán)境下對象透明地發(fā)送請求和接收響應的基本機制,是建立對象之間client/server關系的中間件。ORB使得對象可以透明地向其他對象發(fā)出請求或接受其他對象的響應,這些對象可以位于本地也可以位于遠程機器。ORB攔截請求調(diào)用,并負責找到可以實現(xiàn)請求的對象、傳送參數(shù)、調(diào)用相應的方法、返回結(jié)果等。client對象并不知道同server對象通訊、激活或存儲server對象的機制,也不必知道server對象位于何處、它是用何種語言實現(xiàn)的、使用什么操作系統(tǒng)或其他不屬于對象接口的系統(tǒng)成分。作用作用它的作用在于提供一個通信框架,透明地在異構(gòu)的分布計算環(huán)境中傳遞對象請求。CORBA規(guī)范包括了ORB的所有標準接口。1991年推出的CORBA1.1定義了接口描述語言OMGIDL和支持Client/Server對象在具體的ORB上進行互操作的API。CORBA2.0規(guī)范描述的是不同廠商提供的ORB之間的互操作。值得指出的是client和server角色只是用來協(xié)調(diào)對象之間的相互作用,根據(jù)相應的場合,ORB上的對象可以是client,也可以是server,甚至兼有兩者。當對象發(fā)出一個請求時,它是處于client角色;當它在接收請求時,它就處于server角色。大部分的對象都是既扮演client角色又扮演server角色。另外由于ORB負責對象請求的傳送和server的管理,client和server之間并不直接連接,因此,與RPC所支持的單純的Client/Server結(jié)構(gòu)相比,ORB可以支持更加復雜的結(jié)構(gòu)。請求代理體系結(jié)構(gòu)請求代理體系結(jié)構(gòu)公共對象請求代理體系結(jié)構(gòu)(CommonObjectRequestBrokerArchitecture,也稱通用對象請求代理體系結(jié)構(gòu)),是由OMG組織制訂的一種標準的面向?qū)ο髴贸绦蝮w系規(guī)范。或者說CORBA體系結(jié)構(gòu)是對象管理組織(OMG)為解決分布式處理環(huán)境(DCE)中,硬件和軟件系統(tǒng)的互連而提出的一種解決方案;OMG組織是一個國際性的非盈利組織,其職責是為應用開發(fā)提供一個公共框架,制訂工業(yè)指南和對象管理規(guī)范,加快對象技術的發(fā)展。OMG組織成立后不久就制訂了OMA(ObjectManagementArchitecture,對象管理體系結(jié)構(gòu))參考模型,該模型描述了OMG規(guī)范所遵循的概念化的基礎結(jié)構(gòu)。OMA由對象請求代理ORB、對象服務、公共設施、域接口和應用接口這幾個部分組成,其核心部分是對象請求代理ORB(ObjectRequestBroker)。對象服務是為使用和實現(xiàn)對象而提供的基本服務集合;公共設施是向終端用戶應用程序提供的一組共享服務接口;域接口是為應用領域服務而提供的接口;應用接口是由開發(fā)商提供的產(chǎn)品,用于它們的接口,不屬于OMG標準的內(nèi)容。ORB提供了一種機制,通過這種機制,對象可以透明的發(fā)出請求和接收響應。分布的、可以互操作的對象可以利用ORB構(gòu)造可以互操作的應用。CORBA標準由物件管理組織(OMG)設立并進行控制,CORBA定議了一系列API,通信協(xié)議,和物件/服務信息模型用于使得異質(zhì)應用程序能夠互相操作,這些應用程序用不同的程序語言編寫,運行在不同的平臺上。CORBA因此為定義明確的物件提供了平臺和位置的透明性,這些物件是分布式計算平臺的基礎。概述概述在開發(fā)傳統(tǒng)的Client/Server應用時,開發(fā)者使用他們自己設計的或一個公認的標準來定義用于設備之間通信的協(xié)議。協(xié)議的定義依賴于實現(xiàn)語言、網(wǎng)絡傳輸和許多其他因素,而ORB的出現(xiàn)簡化了這一過程。使用ORB時,協(xié)議是使用接口定義語言(IDL,InterfaceDefinitionLanguage)定義的,而IDL是獨立于語言的。并且ORB提供很強的靈活性,它使程序員選擇最適合的操作系統(tǒng)、執(zhí)行環(huán)境,甚至系統(tǒng)各個組件也可以采用不同的編程語言實現(xiàn)。更重要的是,它允許現(xiàn)有組件的集成。在一個基于ORB的解決方案中,開發(fā)者可以使用與創(chuàng)建新對象一樣的IDL,并對遺留系統(tǒng)進行建模,他們創(chuàng)建“包裝”代碼以在標準化的軟件總線與遺留系統(tǒng)接口之間傳遞信息。ORB的結(jié)構(gòu)ORB的結(jié)構(gòu)圖1所示為一個客戶端向?qū)ο髮崿F(xiàn)(ObjectImplementation)發(fā)送一個請求??蛻舳耸遣僮鲗ο蟮囊粋€實體,對象實體是實現(xiàn)對象的代碼和數(shù)據(jù)。ORB負責根據(jù)一個請求來定位一個對象,安排對象實現(xiàn)準備接受請求,與請求的數(shù)據(jù)通信。客戶端的接口與對象的位置、實現(xiàn)對象的語言及其他不在對象接口反映出來的方面完全無關??蛻舳耸褂脛討B(tài)調(diào)用接口(DynamicInvocationInterface)或接口存根(OMGIDLStub)來發(fā)出請求。由于某種原因,客戶端也可以直接與ORB聯(lián)系。對象實現(xiàn)使用對接口進行接口語言映射生成的框架文件(Skeleton)或動態(tài)框架Skeleton的方式接受請求。對象實現(xiàn)也可以調(diào)用對象適配器(ObjectAdapter)和ORB??梢杂脙煞N方法來定義對象接口。第一種方法是用對象描述語言(OMGInterfaceDefinitionLanguage)來定義接口。該語言根據(jù)可能對對象進行的操作和這些操作使用的參數(shù)來定義對象類型。第二種方法是把接口放入接口庫服務(InterfaceRepositoryService)中;該服務把接口中的元素描述成一個對象。任何能實現(xiàn)ORB的軟件中,接口描述語言(可能根據(jù)文檔的內(nèi)容而改變)和接口庫具有相同的作用。一個客戶端要使用對象引用(ObjectReference)來完成請求,它必須知道對象的類型及具體的操作。圖1通過ORB傳遞請求使用樁(Stub)和動態(tài)調(diào)用接口發(fā)出的請求具有相同的語義,信息的接收者不能分辨出該請求是使用哪種方法來傳遞的。ORB確定適當?shù)膶崿F(xiàn)代碼、傳遞參數(shù),通過接口框架或動態(tài)框架把控制傳給對象實現(xiàn),如圖2所示。公共體系結(jié)構(gòu)(CORBA)公共體系結(jié)構(gòu)(CORBA)為了解決分布式計算環(huán)境(DCE,DistributedComputingEnvironment)中不同硬件設備和軟件系統(tǒng)的互聯(lián)、增強網(wǎng)絡間軟件的互操作性、解決傳統(tǒng)分布式計算模式中的不足等問題,對象管理組織(OMG)提出了公共對象請求代理體系結(jié)構(gòu)(CORBA),以增強軟件系統(tǒng)間的互操作能力,使構(gòu)造靈活的分布式應用系統(tǒng)成為可能。CORBA規(guī)范使得面向?qū)ο蟮能浖诜植?、異?gòu)環(huán)境下實現(xiàn)可重用、可移植和互操作。主要包括以下幾個方面的特點。(1)CORBA采用面向?qū)ο蟮能浖_發(fā)方法,對應用對象實現(xiàn)內(nèi)部細節(jié)的完整封裝,保留對象方法的對外接口定義。CORBA使用OMGIDL定義接口,并可以映射到各種編程語言,包括C、C++、Java、python和SmallTalk等。一個接口對應于一個支持繼承的類,類的方法在接口中只需聲明,不需要說明接口實現(xiàn)方法。以WiMAX為例,OMGIDL的描述如下。所需的接口包括天線控制、加擾、信道編碼、交織、數(shù)字調(diào)制、OFDM、OFDM解調(diào)、數(shù)字解調(diào)、信道解碼和解擾。CORBA在軟件無線電系統(tǒng)中的作用CORBA在軟件無線電系統(tǒng)中的作用軟件無線電不僅需要硬件模塊化,也需要軟件模塊化。由于缺乏標準的應用級的軟件到軟件的應用編程接口(API),缺乏對存儲器、緩存空間與處理資源的量化,軟件重用度低,花費大,研制周期長,因而需要把軟件按功能分成模塊,各模塊功能與接口有清楚的定義。軟件無線電論壇根據(jù)API來進行區(qū)分各個模塊,采用CORBA來構(gòu)建整個系統(tǒng)。CORBA技術能夠無縫地共享應用數(shù)據(jù),它提供了一種軟總線。利用接口定義語言(Java語言是一個子集),每一個軟件包被提供一個信息傳輸接口到ORB,對象用CORBA接口來實現(xiàn)插拔。在軟件無線電中使用CORBA到底有什么好處呢?這是一個很有意思的話題,事實上,構(gòu)建一個軟件無線電的體系架構(gòu)現(xiàn)在有很多種方法,但是這并不意味著對于如何構(gòu)建軟件無線電的體系架構(gòu)的研究已經(jīng)很完善。恰恰相反,所有的這些方法或者理論都沒有給出一個一般意義上的軟件無線電系統(tǒng)的構(gòu)建方法。比如,現(xiàn)在有的公司已經(jīng)開發(fā)了軟件無線電接收機,但是人們很難或者幾乎不可能把它所構(gòu)建的系統(tǒng)搬到另一個軟件無線電系統(tǒng)上去(即使最簡單的開發(fā)一個與之對
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 長春大學旅游學院《學科教學設計與案例分析》2023-2024學年第二學期期末試卷
- 民辦四川天一學院《卓越教師綜合訓練》2023-2024學年第二學期期末試卷
- 山東女子學院《果蔬加工工藝學實驗》2023-2024學年第二學期期末試卷
- 蘭州理工大學《模擬電子技術仿真設計實驗》2023-2024學年第二學期期末試卷
- 廣西自然資源職業(yè)技術學院《中國區(qū)域經(jīng)濟》2023-2024學年第二學期期末試卷
- 吉首大學張家界學院《水文學與水資源》2023-2024學年第一學期期末試卷
- 溫州肯恩大學《工程倫理與藝術》2023-2024學年第二學期期末試卷
- 河北農(nóng)業(yè)大學現(xiàn)代科技學院《精神病學》2023-2024學年第一學期期末試卷
- 武漢電力職業(yè)技術學院《熱學》2023-2024學年第二學期期末試卷
- 山西財貿(mào)職業(yè)技術學院《EDA設計》2023-2024學年第二學期期末試卷
- 本科成考試題及答案政治
- 中國桂花茶行業(yè)市場前景預測及投資價值評估分析報告
- 【初中信息】數(shù)據(jù)分析與處理(課件)-八年級信息科技全一冊同步教學(人教版2024)
- 危重患者護理操作流程
- 2025山東能源集團中級人才庫選拔易考易錯模擬試題(共500題)試卷后附參考答案
- 第五單元:數(shù)學廣角-鴿巢問題(教學設計)-【大單元教學】六年級數(shù)學下冊同步備課系列(人教版)
- 2024年內(nèi)江市事業(yè)單位醫(yī)療崗招聘考試真題
- 《水利工程建設項目生產(chǎn)安全重大事故隱患清單指南》知識培訓
- 浙江省溫州市瑞安市2023-2024學年六年級下學期數(shù)學期中分項評價試卷(含答案)
- 山東省德州市2024年中考化學試卷(含答案)
- 肝淤血病理切片
評論
0/150
提交評論