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