close




嵌入式系統中配備有如同電腦系統之中央處理器(CentralProcessor)或微處理機(也可以是微控制器)與記憶體等元件,可如同普通電腦系統一般地執行程式或軟體。很自然地,嵌入式系統所執行之軟體就可稱為『嵌入式軟體』。這種理所當然式的定義,並不能真正說明什麼是嵌入式軟體,亦不能幫助讀者諸君了解嵌入式軟體;因為這樣的定義未能說明『嵌入式軟體』與『非嵌入式軟體』之區別[3]。IDC的一份研究報告中,對『嵌入式軟體』之定義為:被設計用以提供控制、賦予產品智慧並內建於微電子產品中作為不可分離之元件的軟體[4]。資訊工業策進會資訊市場情報中心之報告-『後PC時代之嵌入式軟體發展趨勢』對『嵌入式軟體』之定義為:儲存於非揮發性記憶體(例如:ROM,FlashMemory)中的軟體程式,專司硬體的驅動、控制與操作介面處理[5]。然則,究竟嵌入式軟體與一般電腦軟體有何差異?開發嵌入式軟體與開發一般電腦軟體有何差異?諸如此類問題之答案應是瞭解嵌入式軟體之關鍵。本文之主要目的就是嘗試以嵌入式軟體與一般電腦軟體主要不同之處為起點,介紹什麼是嵌入式軟體。除了因應特定功能需求之外,嵌入式軟體與一般電腦軟體之主要差異首推嵌入式軟體必須具備邏輯上與時間上之正確性;邏輯上之正確性是所有電腦軟體(包含嵌入式軟體)必須滿足之條件,也就是計算處理之結果必須正確;時間上之正確性則是嵌入式軟體必須於既定之時間內完成所需要之計算或處理工作,否則“遲來的答案不是正確的答案”,例如:碰撞發生之後才“正確地”發出碰撞警示已無濟於事。這也是嵌入式軟體與即時系統(Real-TimeSystem)有密切關聯之主要原因。其次,嵌入式軟體必須具有併行處理(ConcurrentProcessing)之能力,以便應付其運作環境中,各種可能之不同狀況同時發生之情形,例如:監控馬達之轉速,同時記錄溫度變化,同時又處理使用者的操作;一般電腦軟體則多以循序處理(SequentialProcessing)之方式運作,需要時則由作業系統協助處理多個程式併行執行之情形。此外,特別注重可靠度與容錯能力也是嵌入式軟體之重要特徵。可靠度是可經常維持正確運作之指標;容錯能力是對失誤狀況發現與處理之能力。







arrow
arrow
    全站熱搜

    pyoyo01 發表在 痞客邦 留言(0) 人氣()