當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]中間件思想在嵌入式GIS設(shè)計(jì)中的應(yīng)用

摘要:介紹中間件的基本概念,包括中間件的定義、特點(diǎn)、應(yīng)用現(xiàn)狀及未來(lái)發(fā)展趨勢(shì)。在此基礎(chǔ)上,針對(duì)嵌入式地理信息系統(tǒng),給出如何將中間件思想應(yīng)用在該系統(tǒng)設(shè)計(jì)上,以滿(mǎn)足系統(tǒng)能夠在各種異構(gòu)平臺(tái)上運(yùn)行的要求。

    關(guān)鍵詞:中間件 嵌入式地理信息系統(tǒng) 適配層

引言

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

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

1 中間件的基本概念

1.1 中間件定義及作用

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

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

*運(yùn)行于多種硬件和OS平臺(tái);

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

*支持標(biāo)準(zhǔn)的協(xié)議;

*支持標(biāo)準(zhǔn)的接口。

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

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

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

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

*節(jié)約應(yīng)用的開(kāi)發(fā)成本;

*減少系統(tǒng)初期的建設(shè)成本;

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

*保護(hù)已有的投資;

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

*減少維護(hù)費(fèi)用;

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

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

*增強(qiáng)應(yīng)用的生命力。

1.2 中間件應(yīng)用現(xiàn)狀及未來(lái)發(fā)展趨勢(shì)

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

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

①數(shù)據(jù)類(lèi)(data integration):用于數(shù)據(jù)的存取、利用和增值,此類(lèi)中間用于構(gòu)建以數(shù)據(jù)為中心的應(yīng)用。

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

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

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

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

中間件類(lèi)型 1997年銷(xiāo)售額/億美元 2002年銷(xiāo)售額/億美元 年平均增長(zhǎng)率/% 亞太市場(chǎng)銷(xiāo)售額/億美元
消息中間件 3.6 24.5 46 3.6
交易中間件 3.5 16.5 36 2.6
對(duì)象中斷件 1.4 7 34 0.56
數(shù)據(jù)訪(fǎng)問(wèn)中斷件 6.1 16.5 23 -
應(yīng)用服務(wù)器 - 40 - -
安全中間件 1.227 3 - -

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

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

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

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

2 中間件思想在嵌入式GIS設(shè)計(jì)中的應(yīng)用

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

系統(tǒng)整體結(jié)構(gòu)如圖1所示。

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

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

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

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

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

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

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱(chēng),數(shù)字世界的話(huà)語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉