標籤:
一.簡介
嵌入式軟體是電子產品中不可缺的一部分。
嵌入式軟體關心的不是資料轉換,而重點在與物理世界的互動上。它運行在一個機器或電子裝置上【1】。
二.特點
時間性、並發性、活躍性、魯棒性、連續體(continuums) 、響應性、異構性、資源分派這些方面是嵌入式軟體需要考慮的問題。
嵌入式軟體目的不是一般意義計算中的資料轉換,而是要與物理世界進行互動。嵌入式軟體是運行在機器上的程式,它運行於汽車、飛機、電話、聲音裝置、機器人、玩具、安全系統、起搏器、心跳監測儀、武器、電視裝置、印表機、掃描器、天氣控制系統、生產系統等等。
具有與物理世界進行互動的軟體必然要擷取物理世界的一些屬性,軟體的運行需要時間,要消耗能量,除非它出了故障,否則它不會終止。嵌入式軟體不是理想的阿蘭·圖靈機程式【1】。
三. 發展趨勢
Michael Barr對嵌入式軟體設計發展趨勢預見【2】:
-
32位ARM Cortex Mx將代替現在的8位及16位MCU。
-
模型驅動編程
Michael Barr提到QP的QM。程式複雜到百萬行代碼時,C/C++已經力所不能及了,就如程式到了1KB以上時,組合語言已經力不從心了,只有用C/C++了。
-
嵌入式系統的串連安全性
當前的嵌入式系統不是孤立的,一般都要串連到Internet上,所以串連的安全變得越來越重要。
Miro Samek對嵌入式軟體設計發展趨勢預見【3】:
-
即時嵌入式架構代替RTOS或運行於RTOS之上;
嵌入式軟體的發展會出現各種嵌入式架構,如Java的應用出現了struts,spring, hibernate等架構一樣。
-
快速模型驅動及代碼產生
也就是模型驅動編程,這個,Miro Samek在說他的QP和QM。
嵌入式軟體將仍然是一個引人入勝的和富有挑戰性的職業生涯的選擇!
參考:
【1】 Edward A. Lee, Embedded Software
, Advances in Computers (M. Zelkowitz, editor) 56, Academic Press, London, 2002.
【2】Michael Barr的部落格:http://embeddedgurus.com/barr-code/
【3】Miro Samek的部落格:http://embeddedgurus.com/state-space/
關於嵌入式軟體