馬偉順 魏燕 李合菊 孫鋒申

摘 要 隨著計(jì)算機(jī)網(wǎng)絡(luò)通信技術(shù)的快速發(fā)展,其技術(shù)應(yīng)用的領(lǐng)域也在逐漸加大,導(dǎo)致嵌入式編程軟件的發(fā)展也更加迅猛。然而與硬件方面相比,嵌入式軟件的發(fā)展相對(duì)滯后,正因?yàn)榇藢?duì)開(kāi)發(fā)嵌入式軟件也有了更高的要求。為了使得移植不同嵌入式系統(tǒng)及在嵌入式系統(tǒng)中進(jìn)行互操作的問(wèn)題能夠解決,筆者對(duì)嵌入式系統(tǒng)軟件中間件的開(kāi)發(fā)與研究進(jìn)行了探討。
【關(guān)鍵詞】嵌入式系統(tǒng) 中間件 軟件開(kāi)發(fā)
本文針對(duì)嵌入式編程軟件中間件技術(shù)進(jìn)行了概述,再與國(guó)外此項(xiàng)技術(shù)的研究進(jìn)行對(duì)比,分析了探討該項(xiàng)技術(shù)的發(fā)展。
1 嵌入式編程軟件中間件的概述
嵌入式中間件即為在嵌入式程序和嵌入式系統(tǒng)間使用中間件。此中間件在編程接口方面有著統(tǒng)一化的規(guī)范,提供給應(yīng)用程序操作系統(tǒng)的功能。應(yīng)用編程接口的統(tǒng)一化封裝了整個(gè)嵌入式系統(tǒng),使其形成虛擬化操作系統(tǒng)。此虛擬操作系統(tǒng)是對(duì)嵌入式系統(tǒng)的繼續(xù)加工,其使得嵌入式程序有更強(qiáng)的可維護(hù)性、可移植性和代碼繼承性,也使得嵌入式軟件完成開(kāi)發(fā)的周期逐年縮短。
一般情況下,嵌入式操作系統(tǒng)可以為用戶(hù)提供調(diào)度控制、消息隊(duì)列、時(shí)鐘管理、內(nèi)存管理、I/O驅(qū)動(dòng)等接口,實(shí)現(xiàn)這些接口功能可采取如下方式:先完成最小操作系統(tǒng)原語(yǔ)閉集的實(shí)現(xiàn),接著通過(guò)實(shí)際應(yīng)用再完成擴(kuò)充。
2 國(guó)外中間件研究的現(xiàn)狀及中間件設(shè)計(jì)的相關(guān)理論
2.1 國(guó)外中間件研究的現(xiàn)狀
國(guó)外對(duì)編程接口統(tǒng)一問(wèn)題的研究起步較早,80年代初期相關(guān)研究工作就已經(jīng)開(kāi)始逐漸展開(kāi)。
80年代末期ISO組織與IEEE聯(lián)合制定了POSIX標(biāo)準(zhǔn),此項(xiàng)標(biāo)準(zhǔn)依照UNIX系統(tǒng)的接口調(diào)用標(biāo)準(zhǔn)完成。其實(shí)現(xiàn)了操作系統(tǒng)接口調(diào)用的統(tǒng)一化,只有與PIOSIX標(biāo)準(zhǔn)相符的系統(tǒng)才可以實(shí)現(xiàn)UNIX程序的運(yùn)行。
歐洲汽車(chē)電子相關(guān)行業(yè)提出了OSEK_VDX接口標(biāo)準(zhǔn),此項(xiàng)標(biāo)準(zhǔn)專(zhuān)門(mén)為實(shí)時(shí)、分布式系統(tǒng)結(jié)構(gòu)定制,其主要目標(biāo)為在汽車(chē)工業(yè)中進(jìn)行嵌入式應(yīng)用。OSEK_VDX對(duì)網(wǎng)絡(luò)管理、通信及操作系統(tǒng)的問(wèn)題較為關(guān)注,在其應(yīng)用程序、操作系統(tǒng)、網(wǎng)絡(luò)管理及實(shí)例化語(yǔ)言等幾大模塊內(nèi)用戶(hù)可以按照需要完成配置。
2.2 嵌入式中間件設(shè)計(jì)的相關(guān)理論
2.2.1 面向?qū)ο蟮脑O(shè)計(jì)模式研究
封裝接口有三種方法、抽象類(lèi)中、函數(shù)回調(diào)、條件編譯。現(xiàn)階段很多操作系統(tǒng)采用前兩種方法,然而隨著開(kāi)發(fā)規(guī)模的逐漸擴(kuò)大,此類(lèi)方法很多缺點(diǎn)也日益明顯:一致性差、容易出錯(cuò)、有強(qiáng)制性等。將C++、OO的模板、重載及抽象等特性合理利用,能較好地完成接口的封裝與增強(qiáng),為嵌入式平臺(tái)提供編程界面及比較靈活的定制能力。
縮減軟件開(kāi)發(fā)周期、提高軟件質(zhì)量、減小開(kāi)發(fā)成本是開(kāi)發(fā)軟件面臨的重要要求,而要想達(dá)到這樣的要求務(wù)必要確保軟件產(chǎn)品有較好的可復(fù)用性。而面向?qū)ο蟮脑O(shè)計(jì)思想與方法可以確保軟件可復(fù)用性的提升,其編程語(yǔ)言、構(gòu)架與組件認(rèn)可度高,其技術(shù)使軟件質(zhì)量得到提升并減少軟件開(kāi)發(fā)的成本。
運(yùn)用面向?qū)ο蟮哪J竭M(jìn)行設(shè)計(jì)有著如下優(yōu)點(diǎn):
(1)有效減小通信類(lèi)軟件開(kāi)發(fā)的耗資;
(2)降低軟件開(kāi)發(fā)時(shí)的錯(cuò)誤率;
(3)改善軟件可擴(kuò)展性與模塊性,提升軟件整體質(zhì)量;
(4)增強(qiáng)軟件可復(fù)用性;
(5)提升嵌入式軟件研發(fā)平臺(tái)的性能。
2.2.2 開(kāi)放實(shí)現(xiàn)的中間件設(shè)計(jì)初探
為滿足不同客戶(hù)的需求,筆者選取了開(kāi)放實(shí)現(xiàn)的嵌入式中間件完成設(shè)計(jì)。開(kāi)放實(shí)現(xiàn)旨在讓編程人員在缺省的實(shí)現(xiàn)與需要相滿足時(shí),通過(guò)常規(guī)方式使得模塊基本功能得以使用,如果有需要能夠用相應(yīng)的策略控制模塊的實(shí)現(xiàn)。除此之外,開(kāi)放實(shí)現(xiàn)力求確定實(shí)現(xiàn)策略、獨(dú)立完成功能問(wèn)題的處理。采用這樣的模塊,需要提供元界面、基界面兩類(lèi)功能界面。
2.2.3 可移植的中間件設(shè)計(jì)研究
現(xiàn)階段在完成嵌入式中間件的設(shè)計(jì)時(shí),往往針對(duì)某一操作系統(tǒng)進(jìn)行,對(duì)系統(tǒng)進(jìn)行更換時(shí)就要依照新系統(tǒng)完成中間件的重新設(shè)計(jì)。這會(huì)導(dǎo)致更換系統(tǒng)時(shí)付出大量工作。
通過(guò)分析虛擬文件系統(tǒng),筆者認(rèn)為設(shè)計(jì)中間件時(shí)可以依照虛擬文件系統(tǒng)的整體結(jié)構(gòu)來(lái)進(jìn)行。操作系統(tǒng)和應(yīng)用軟件不進(jìn)行直接的交互,而是運(yùn)用中間件完成交互,擴(kuò)展操作系統(tǒng)的功能,并對(duì)操作系統(tǒng)進(jìn)行隔離。
3 嵌入式軟件系統(tǒng)的功能擴(kuò)展庫(kù)
3.1 擴(kuò)展庫(kù)結(jié)構(gòu)體系概述
操作系統(tǒng)擴(kuò)展簡(jiǎn)稱(chēng)OSE,其是運(yùn)行在嵌入式OS與UNIX之上的擴(kuò)展軟件包。此中間件擴(kuò)展、增強(qiáng)了系統(tǒng)的調(diào)用。筆者對(duì)OSE的體系展開(kāi)簡(jiǎn)要概述,其總體結(jié)構(gòu)分為嵌入式應(yīng)用系統(tǒng)、OSE操作系統(tǒng)基本接口、OSE操作系統(tǒng)擴(kuò)展接口及嵌入式操作系統(tǒng)幾部分。
此擴(kuò)展庫(kù)提供十五個(gè)模塊,典型如文件存取模塊、信號(hào)量模塊、通信模塊、內(nèi)存管理模塊、參數(shù)控制模塊、時(shí)間同步管理模塊、RDS管理模塊等,不同模塊作用不同。OSE本身的屏蔽功能確保了不同操作系統(tǒng)間能實(shí)現(xiàn)互操作及通信。
3.2 以系統(tǒng)關(guān)機(jī)模塊為例探討其設(shè)計(jì)和實(shí)現(xiàn)
系統(tǒng)關(guān)機(jī)即是OSE提供給用戶(hù)關(guān)閉系統(tǒng)的接口,因?yàn)榫W(wǎng)絡(luò)系統(tǒng)內(nèi)有其他終端設(shè)備,功能的區(qū)別導(dǎo)致了關(guān)機(jī)過(guò)程的差異性。關(guān)機(jī)的結(jié)構(gòu)描述如下:
系統(tǒng)關(guān)機(jī)模塊提供初始化關(guān)機(jī)、激活關(guān)機(jī)及登錄用戶(hù)關(guān)機(jī)三個(gè)接口。其中,激活關(guān)機(jī)有如圖1所示的流程圖。
4 結(jié)語(yǔ)
如今嵌入式系統(tǒng)的應(yīng)用范圍越來(lái)越廣泛,嵌入式技術(shù)也呈現(xiàn)了迅猛的發(fā)展趨勢(shì)。發(fā)展嵌入式中間件技術(shù),讓開(kāi)發(fā)簡(jiǎn)便易行、降低開(kāi)發(fā)成本、減小開(kāi)發(fā)周期,已經(jīng)是軟件商業(yè)開(kāi)發(fā)未來(lái)發(fā)展的趨勢(shì)。筆者對(duì)此項(xiàng)技術(shù)進(jìn)行了簡(jiǎn)要概述,希望為相關(guān)從業(yè)人員提供參考。
參考文獻(xiàn)
[1]揭育柱.面向移動(dòng)計(jì)算的RFID中間件的設(shè)計(jì)與應(yīng)用[D].華南理工大學(xué),2010.
[2]王震.基于中間件的嵌入式GUI標(biāo)準(zhǔn)化研究與實(shí)現(xiàn)[D].華南理工大學(xué),2013.
作者簡(jiǎn)介
馬偉順(1970-),男,山東省萊蕪市人。碩士研究生學(xué)歷。現(xiàn)為萊蕪職業(yè)技術(shù)學(xué)院副教授。研究方向?yàn)橹悄芸刂萍夹g(shù),節(jié)水灌溉控制技術(shù)等。
作者單位
萊蕪職業(yè)技術(shù)學(xué)院 山東省萊蕪市 271100