<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 中間件思想在嵌入式GIS設計中的應用

中間件思想在嵌入式GIS設計中的應用

作者: 時(shí)間:2004-12-11 來(lái)源:網(wǎng)絡(luò ) 收藏
摘要:介紹的基本概念,包括的定義、特點(diǎn)、現狀及未來(lái)發(fā)展趨勢。在此基礎上,針對地理信息系統,給出如何將在該系統上,以滿(mǎn)足系統能夠在各種異構平臺上運行的要求。

關(guān)鍵詞:中間件 地理信息系統 適配層

引言

隨著(zhù)計算機軟件技術(shù)的迅速發(fā)展,程序的規模也在不斷擴大。應用范圍也更加廣闊。這不僅存在著(zhù)多種硬件平臺(例如臺式機、系統),而且在這些硬件平臺上,通常又存在著(zhù)多種的通信介質(zhì)(例如串口、USB口等)、通信協(xié)議(例如TCP/IP等)及操作系統軟件平臺(例如Windows、Linux、Nucleus等)。我們的軟件開(kāi)發(fā)往往要求能夠在這些異構的硬/軟件平臺上運行。

為此,我們引入了“中間件(Middleware)”的概念。本文在介紹中間件基本概念的基礎上,結合研究項目“嵌入式地址信息系統的開(kāi)發(fā)”來(lái)說(shuō)明如何以中間件的形式該系統。

1 中間件的基本概念

1.1 中間件定義及作用

中間件是位于平臺(硬件和操作系統)和應用之間的通用服務(wù),這些服務(wù)具有標準的程序接口和協(xié)議。針對不同的操作系統和硬件平臺,它們可以有符合接口和協(xié)議規范的多種實(shí)現。也就是說(shuō),中間件是位于底層硬件/操作系統平臺之上,應用層之下的中間適配層。該層向下屏蔽掉硬件平臺或操作系統平臺的差異,向上為應用層操作一個(gè)統一的標準接口,應用層的開(kāi)發(fā)基于該接口進(jìn)行。在以下定義下,中間件具有如下特點(diǎn):

*滿(mǎn)足大量應用的需要;

*運行于多種硬件和OS平臺;

*支持分布計算,提供跨網(wǎng)絡(luò )、硬件和OS平臺的透明性應用或服務(wù)的交互;

*支持標準的協(xié)議;

*支持標準的接口。

在中間件下,軟件的開(kāi)發(fā)變得更加簡(jiǎn)單。首先,當系統硬件/操作系統平臺改變時(shí),只需改變中間適配層的幾個(gè)參數,只要保持中間件層對應用層的接口定義不變,就可以直接將應用程序移植過(guò)去運行。所有的代碼只需編寫(xiě)一次就可在任何系統上運行,大大縮短了系統研制的周期,提高了開(kāi)發(fā)效率,同時(shí)還保證了系統的高伸縮性、易升級性穩定性。

其次,由于中間件屏蔽了底層平臺差異,提供了標準的封裝接口,使應用層以組件的形式實(shí)現為可能。用戶(hù)可以根據自己的需要將各個(gè)組件有選擇地進(jìn)行組合,像搭積木一樣,構成自己的應用系統。

世界著(zhù)名的咨詢(xún)機構Standish Group在一份研究報告中歸納了中間件的十大優(yōu)越性:

*縮短應用的開(kāi)發(fā)周期;

*節約應用的開(kāi)發(fā)成本;

*減少系統初期的建設成本;

*降低應用開(kāi)發(fā)的失敗率;

*保護已有的投資;

*簡(jiǎn)化應用集成;

*減少維護費用;

*提高應用的開(kāi)發(fā)質(zhì)量;

*保證技術(shù)進(jìn)步的連續性;

*增強應用的生命力。

1.2 中間件應用現狀及未來(lái)發(fā)展趨勢

中間件的應用范圍十分廣泛,發(fā)展前景非常美好。據有關(guān)機的統計表明,近5年來(lái),全球中間件的銷(xiāo)售額平均年增長(cháng)率為34%,到2004年總銷(xiāo)售額將達到97億美元。中間件已經(jīng)成為國際IT巨頭競逐的目標,各大軟硬件廠(chǎng)商都在積極參與有關(guān)標準的制定和產(chǎn)品的研發(fā)工作,像IBM、甲骨文、BEA、微軟等都制定了相應的戰略。據估計,未來(lái)基于Internet的電子商務(wù)業(yè)務(wù)將有79%建筑在中間件的基礎之上。

中間件種類(lèi)繁多,從不同的應用方面及發(fā)展程序上有不同的分類(lèi)方法。在同上,從中間件所起的作用上來(lái)說(shuō),中間件可以分為以下三類(lèi)。

①數據類(lèi)(data integration):用于數據的存取、利用和增值,此類(lèi)中間用于構建以數據為中心的應用。

②處理類(lèi)(process integration):把分布在網(wǎng)絡(luò )結點(diǎn)上的各個(gè)應用或處理連接在一起,形成一個(gè)統一的、協(xié)同工作的分布式應用。

③分布式構件類(lèi)(distributed components):支持構件式應用,是未來(lái)應用的發(fā)展方向。

據統計,近五年增長(cháng)率最高的中間件集中在消息中間件、交易中間件、對象中間件和應用服務(wù)器中間件、數據訪(fǎng)問(wèn)中間件5種(統計數據如表1所列)。另外,隨著(zhù)網(wǎng)上信息安全問(wèn)題的出現,安全中間悠揚也應運而生。

表1 IDC的市場(chǎng)調查分析

中間件類(lèi)型1997年銷(xiāo)售額/億美元2002年銷(xiāo)售額/億美元年平均增長(cháng)率/%亞太市場(chǎng)銷(xiāo)售額/億美元
消息中間件3.624.5463.6
交易中間件3.516.5362.6
對象中斷件1.47340.56
數據訪(fǎng)問(wèn)中斷件6.116.523-
應用服務(wù)器-40--
安全中間件1.2273--

消息中間件是目前中間件的發(fā)燕尾服熱點(diǎn)。它適用于任何需要進(jìn)行網(wǎng)絡(luò )通信的系統,負責建立網(wǎng)絡(luò )通信的通道,進(jìn)行數據或文件發(fā)送。消息中間悠揚可以跨平臺操作,為不同操作系統上的應用軟件集成提供方便,從而滿(mǎn)足企業(yè)內部對系統伸縮性和可擴展性的要求。

數據訪(fǎng)問(wèn)中間件能屏蔽不同廠(chǎng)家、不同類(lèi)型數據庫之間的差異,實(shí)現異構數據的共享,從而使得企業(yè)不同時(shí)代、不同地域的寶貴數據能夠充分利用。

對象中間件技術(shù)目前發(fā)展迅速,各大硬軟件廠(chǎng)商都在積極參與有關(guān)標準的制定和產(chǎn)品的開(kāi)發(fā)工作。面向對象的中間件提供一個(gè)標準的構件框架,能使不同廠(chǎng)家的軟件交互訪(fǎng)問(wèn),為軟件用戶(hù)及開(kāi)發(fā)者提供一種即插即用的互操作性。

安全中間提供完備的信息安全基顧構架,屏蔽安全技術(shù)的復雜性,使設計開(kāi)發(fā)人員無(wú)須具備專(zhuān)業(yè)的安全知識背景就能構構造高安全性的應用。

2 中間件在嵌入式設計中的應用

我們研制的嵌入式是一個(gè)地理信息的綜合系統。在功能上,該系統包括地圖瀏覽、地理位置報告、目標標繪、地形分析等功能模塊;在硬件平能臺上,系統要求能夠運行于PC臺式機和基于A(yíng)RM處理器的嵌入式系統上;在操作系統平臺上,系統要求能夠運行在Winodws 98/2000、Linux等通用操作系統和VxWorks、Nucleus、WinCE等嵌入式操作系統上;在網(wǎng)絡(luò )通信上,要求系統除了能夠支持各種接口及各種通信協(xié)議,還能夠支持自己開(kāi)發(fā)的通信協(xié)議。在這些設計要求下,我倦嵌入式地理信息系統開(kāi)發(fā)中,采用中間件的設計思想,保證程序的可移植性,節省人力物力,使研究成果盡快轉化為產(chǎn)品。

系統整體結構如圖1所示。

其中,底層硬件平臺采用我們研制的基于A(yíng)RM微處理器的嵌入式地理信息系統硬件平臺,包括GPS接口、各種存儲介質(zhì)(例如CF卡、Flash等)、各種接口(例如USB、RS-232串行口、以太網(wǎng)接口)、人機交互接口等。

軟件平臺可以選用Windows、Linux、WinCE、Nucleus等操作系統,利用該平臺可以屏掉底層硬件平臺的差異。

操作系統適配層(即中間件)定義和設計適合各種操作系統的適配層。該層具備操作系統的主要特征(例如多任務(wù)多線(xiàn)程的封裝、調度),向下與相應的各種操作系統相適配,向上提供與操作系統無(wú)關(guān)的統一接口。該層包括任務(wù)管理、消息管理、通信等模塊。為了屏蔽掉底層操作系統的差異,該層的設計要求與操作系統接口的函數要盡可能少,與硬件系統有關(guān)的代碼也要盡可能的少。

終端軟件框架的設計思想是在操作系統適配層之上,根據地理信息系統這一特殊應用,開(kāi)發(fā)自己GUI、文件系統、內存管理、軍標符號庫、基于消息驅動(dòng)的多窗口控制。人機交互接口、專(zhuān)用的地理信息數據庫、統一接口的適合的通信接口、任務(wù)管理等。

應用層在終端軟件框架的基礎上實(shí)現地圖的瀏覽、編譯、查詢(xún)、標繪,組合導航,地形分析,圖層管理,位置報告等功能,并帶有三維顯示引擎。

這種層文件、模塊化的設計可以保證系統很容易地進(jìn)行擴展,使系統不僅能應用于嵌入地管理信息系統,還可以作為一個(gè)基礎平臺應用于其它應用場(chǎng)合。對系統的升級只需對相應的層進(jìn)行修改即可,而不用重新設計整個(gè)系統。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)


關(guān)鍵詞: 設計 應用 GIS 嵌入式 思想 中間件

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>