王海珍
摘要:將UML狀態機以及框架技術應用到嵌入式系統當中,不僅可以提高系統的開發效率,同時還可以確保系統運行的可靠性。與傳統的有限狀態機相比,UML狀態機描述出來的嵌入式系統體現出了圖形可視、邏輯通順以及結構清晰等特征。本文以Quantum Platform框架為例,展開了嵌入式系統的相關應用分析。
關鍵詞:嵌入式系統;UML狀態機;框架技術
中圖分類號:TP311 文獻標識碼:A 文章編號:1007-9416(2017)02-0179-01
由于科學技術的快速發展,嵌入式系統的研發有了很大的進步,不僅將UML狀態機融入到其中,而且在研發中還融入了框架技術[1]。然而這些技術都是在前人取得的成果基礎上進行改進而獲取,如何將其更好的應用到嵌入式系統開發中,成為了該領域研究人員的主要研究內容,本文針對這一問題展開了相關分析。
1 UML狀態機在嵌入式系統中的應用分析
在運用UML狀態機進行嵌入式系統開發時,通常情況下采用事件驅動型設計,該類設計系統也可以稱作Reactive Systems[2]。系統在運行的過程中,大部分時間處于等待狀態,當外部某一個數據包、鼠標擊鍵、時間片、按鍵等事件發生時,才會轉為識別狀態,同時系統會按照預設行為做出相應的響應,當事件處理完畢以后會立即返回至等待狀態。
這種新型的嵌入式系統與傳統系統在開發編程思維方法存在很大的差異,在等待事件來臨時不需要占據系統資源,如果有事件發生,在很短的時間內就會做出相應識別與響應處理,當所有事件處理完畢以后,重新回到等待狀態[3]。該系統處理事件不會受到時間以及時序的限制,在短時間內可以對多種并行事件做出響應。
該系統在事件進行處理時,主要具有以下3個方面的特征:(1)事件驅動型嵌入式系統主要包括兩個方面的應用,其中一方面應用于所有特定事件的處理,另一方面用于上層事件驅動基本框架的處理,其中包括全部事件的申請、定義、分發以及管理等。(2)該系統的邏輯控制實現的依據為上層事件驅動基本框架,從事件處理應用的角度來對系統進行分析可知,該系統實現了反邏輯控制,也就是說該系統只對一些特定響應做出處理,而調度控制主要由基礎框架來負責。(3)完成事件處理應用以后,需要釋放控制權,其指針以及內部堆棧變量都沒有辦法被外部獲取。此時可以利用UML狀態機的實體來對這些信息以及變量進行相應的維護操作,其中處理應用的事件可以是一個,也可以是多個。
2 框架技術在嵌入式系統中的應用分析
本文主要針對Quantum Platform框架的嵌入式系統應用展開分析。該框架作為一個輕量級的事件驅動應用框架,有助于狀態機應用模型的研發,其中該模型主要利用面向對象來設計,不僅可以支持RTOS應用,而且還能夠支持大部分處理器的應用,目前很多領域都在使用這種嵌入式開發系統。
Quantum Platform的組件主要由5部分組成:(1)QEP作為嵌入式系統中的事件處理機制,主要用來調度UML狀態機;(2)QF在QEP的基礎上,主要用于事件驅動應用框架功能的實現;(3)Kernel是一種自帶輕量級的應用框架,可以為傳統的OS/RTOS/Kernel提供相應的支持;(4)QS起到一定的輔助作用,主要用來協助調試跟蹤軟件的正常運行;(5)除了上述四種組件以外,該框架還包括Porting以及BSP文件,同時為所有種類的主流硬件平臺提供了相應的移植范例。
為了對框架技術在嵌入式系統中的應用進行更加深入的分析,筆者在其基礎上提出了一種新型框架結構,該框架的注冊名為QPnanoTM,屬于一種輕量級框架,主要應用于UML狀態機的ROM以及RAM中,其中涉及的單片機主要有AVR、8501、MSP430等,對應的位數可以是8位,也可以是16位。
實踐證明,該系統有助于UML狀態機圖形化建模,不僅如此,該系統還可以為QF框架以及對應生成的代碼體統技術方面的支持,除此之外,內嵌QS模塊的調試與跟蹤都需要利用該系統來實現,而且QK組件的運行也離不開該系統。這樣一種開發方式不僅有助于系統功能的分析,同時還有助于軟件與硬件的協同開發, 為開發平臺提供了相應的移植文件,從而在一定程度上減少了開發工作量。
除此之外,該框架采用的制度為雙授權制度,不僅能夠為GPL V2提供相應的授權,同時還能夠為商業提供相應的授權,這樣有助于代碼的編寫,而且還為商業用戶的開發應用提供了便利條件。
3 結語
由于計算機技術發展迅速,加大了系統開發的復雜度,所有系統的開發都需要分工合作與復用,嵌入式系統的開發也是如此。目前嵌入式開發系統在軟件開發復用方面的技術比較落后,大部分開發人員的知識仍然停留在傳統層面上,缺乏創新性。本文討論該系統中的UML狀態機以及框架技術雖然有助于系統的開發,但是其可靠程度還未可知,希望在今后的研究當中可以加深對該系統的研究。
參考文獻
[1]樓偉剛.UML狀態機與框架技術在嵌入式系統中的應用[J].軟件導刊,2014(5):49-50.
[2]余存,黃利軍,黃浩然,等.基于UML狀態圖和Qt狀態機框架的IEC104規約的分析與實現[J].電力系統保護與控制,2015(15):118-125.
[3]侯敏,宋文鵬,王泊涵,王新冶.UML狀態機模型形式化驗證技術研究[J].計算機工程與設計,2012,33(9):3460-3464.