隨著當今科技的快速發展,我們日常的生活習慣發生了根本性的變化,在生活中越來越離不開一些輔助性產品。
就拿日常生活中一個小小的片段來說,早晨六點半你的手機鬧鈴響了,提醒起床;起床後開始洗漱,此刻你可能邊聽著手機播放的音樂邊用電動牙刷刷牙,接著開始準備使用豆漿機、烤箱或微波爐做早餐,吃完早飯後準備出門,刷公交卡坐公共汽車或地鐵上班,在乘車的過程中,你可能會拿出iPad玩遊戲,看電影……就在起床後到上班這段時間,你已經使用了多個嵌入式產品。
嵌入式產品和我們日常生活息息相關,只要你能想到的領域,都可以找到嵌入式產品的應用,小到你做的一份簡單的早餐,大到登陸火星的裝備。所以說嵌入式的產品包羅萬象,應有盡有。
什麼是嵌入式系統
嵌入式系統這個名詞在業內還沒有統一的定義。英國電器工程師協會(U.K.Institution of Electrical Engineer)是這樣定義的:
嵌入式系統(Embedded System),是一種“完全嵌入受控器件內部,為特定應用而設計的專用計算機系統”。
我們可以看出嵌入式系統為控制、監視或輔助裝置、機器或用於工廠運作的裝置。
與個人計算機這樣的通用計算機系統不同,嵌入式系統通常執行的是帶有特定要求的預先定義的任務。嵌入式系統只針對一項特殊的任務,設計人員能夠對它進行優化,減小尺寸降低成本。由於嵌入式系統通常進行大量生產,所以單個的成本較低。
嵌入式系統還有一種多數人比較認可的一種定義:以應用為中心,計算機技術為基礎,軟硬體可剪裁,適應應用系統對功能、成本、體積、可靠性、功耗嚴格要求的計算機系統。
我們也可以從另一個角度解釋嵌入式系統,凡是帶有微處理器的專用軟硬體系統都可稱為嵌入式系統。即使是沒有嵌入式作業系統的微控制器和 DSP 系統,也可以稱為嵌入式系統,這些系統在完成較為單一的專業功能時具有簡潔高效的特點。但管理系統硬體和軟體的能力有限,在實現複雜多工功能時,往往困難重重,甚至無法實現。
嵌入式系統的特徵
雖然嵌入式系統沒有統一的定義,許多業內人士對其理解也有所差異,但有些特徵是業內人士能普遍接受的,嵌入式系統通常具備如下五個特徵。
1) 系統核心小
由於嵌入式系統的硬體資源相對有限,所以核心與傳統的作業系統要小得多。比如,嵌入式Linux的核心可以做到100KB左右。
2) 專用性強
嵌入式系統是專用的系統,其中的軟體系統和硬體的結合非常緊密,一般要針對硬體進行系統的移植。即使在同一品牌、同一系列的產品中也需要根據系統硬體的變化增或減不斷進行修改。同時針對不同的任務,往往需要對系統進行較大更改,程式的編譯下載要和系統相結合。
3) 軟硬體可裁剪
嵌入式系統的產品,其硬體和軟體都是可以裁剪的,可以簡單理解為它的硬體和軟體由多個模組組成,我們根據實際的產品需求經行選擇,不用的模組就不要新增,只用一次的模組也要設法避免。
4) 實時作業系統
這是嵌入式軟體的基本要求,而且軟體要求固態儲存,以提高速度。軟體程式碼要求高品質和高可靠性、實時性。
5) 非功能性指標要求嚴格
嵌入式系統產品的開發,對非功能性指標要求非常高,比如產品的體積要小,可靠性要求高(如可以在惡劣的環境下正常工作),功耗低等。還有更重要的一點是控制成本,軟硬體的選擇上遵循“夠用就行”,不追求新潮。