鄧曉航
摘 要 隨著嵌入式系統的廣泛使用,人們對于嵌入式系統也進行了范圍更廣,應用更具體的研究,本文將根據嵌入式系統的主要特點,從嵌入式處理器和嵌入式操作系統兩個方面對于嵌入式軟件的進行一系列有針對性的分析,希望為我們嵌入式系統的開發研究能起到一定的作用。
關鍵詞 嵌入式系統 微內核 內存管理單元
中圖分類號:TP273 文獻標識碼:A
隨著中國的數字信息的快速發展,嵌入式系統程序的持續發展也更加開放和更加廣泛,它甚至已經深入人們的生活,被利用于設計軍人,工程,研究和其他領域,可以說進入了人們的生活和工作的各個方面,并已成為人類活動密不可分的伙伴。最傳統的嵌入式系統中實現控制的程序要控制外部,可以是簡單的請求,但不是實際的操作系統,這就是傳統的嵌入式系統的最大的缺點。后來,由于C語言在操作應用程序的開發,嵌入式系統也開始涉足操作系統,最好的例子就是Windows CE,而且由于其具有相對較低的成本和不錯的網絡功能,因此在現代信息技術中有著廣泛的應用范圍。
1 嵌入式系統的關鍵技術
1.1 嵌入式開發技術
主機和目標機器的作用點在嵌入式開發過程中是不同的:主機進行編譯,鏈接,并解決計算機運行過程中的問題,而目標機器就是運行嵌入式軟件的硬件平臺。主機必須先將應用程序轉換為可以運行在目標機器上的二進制代碼。這個過程包括三個步驟:編譯、鏈接、處理。所謂翻譯就是指一個交叉編譯器實現的編譯過程。也就是利用交叉編譯器將運行的電腦平臺轉換至另一個平臺在通過編譯器時生成的代碼。常用工具是交叉編譯器和嘴閃光燈UC/C ++(GCC)。在編纂過程中所產生的所有目標文件都會鏈接到一個對象文件,這個過程被稱為連接。而在尋址物理內存地址的過程中,系統會自動將被分配給每個目標的文件相對偏移。該過程生成的文件,就是可以執行對嵌入式平臺的二進制文件。
嵌入式開發過程中的第二個重要階段是在目標機器上調試應用程序,嵌入式調試通常運用交叉調試器,通常設置成一個目標機調試模式,他們是利用電纜或直接以太網或串行端口BDM電纜連接。在進行任務級調試,源級和匯編級的調試時候,都需要將在主機上的應用程序和操作系統的內核下載保存至目標機的RAM或直接轉換成目標機器的ROM。目標監控調試器就是主機在目標機器上運行的用來控制應用程序的代理(DebuggerAgent) ,前者被固定在目標機器的內存或者ROM,在目標機器上電后能夠自動啟動,并等待主機端的調試器發送命令,并與應用程序調試器下載完成后,自動運行調試功能,將目標機基本的調試信息反饋到主機。
1.2 嵌入式系統的軟件移植技術
1.2.1 字節順序
一般可以分為大小端字節順序,無論是大字節順序還是小字節順序,它們代表的主要是冗余的數據在程序的存放順序。低字節,高地址字節的數據存儲在內存中,是小字節順序。而數據存儲在內存中,以低地址高字節順序就稱為大字節順序。根據PC字節在不同平臺的順序不同,也會有些改變的存儲順序。
1.2.2 字節對齊
在嵌入式系統開發過程中,我們需要字節對齊,這是一個大問題。我們經常使用的字節對齊的方法有很多,例如在GCC編譯器和makefile添加ACK結構,這種辦法可以有效地解決文章結構的空隙,但由這種方法引起的轉換錯誤,是不能夠解決的錯誤。那么為了有效提高軟件的可移植性和互操作性,我們決定在同一個地方,同時安裝閉幕包拆包功能,添加一組發送報文的功能的數據包,這樣就可以輕松有效地解決字節序列比對問題。
1.2.3 位段
在嵌入式系統硬件平臺的開發過程中需要確定和分配空間段,而位段分配大多是由右至左,但有的特殊的卻是由左到右,因為不同數據就導致比特分配序列段訪問錯誤。為了解決這個問題,你必須使用條件編譯的方式來編譯,這取決于不同的平臺上的定義位段的順序。
1.2.4 代碼優化
由于嵌入式軟件的固有特性,它有一個對軟件具有非常高品質的要求,因此在嵌入式系統開發過程中需要非常重要的代碼優化,通過優化的代碼就能夠很好地提高代碼工作效率,使代碼更小。
2 嵌入式系統的應用探討
2.1 人機對話
我們的手機已經可以實現人機對話,甚至一些兒童玩具也可以。如一些玩具可以被輸入我們的聲音,通過他們的控制來調用它。一些智能手機也可以通過簡單地喊他們的名字就可以自動撥打對方的電話,這主要是由于語音相關技術通過嵌入式語音芯片在嵌入式操作系統中,實現了人與機器之間的對話,也使科技變得更加人性化。
2.2 多媒體網關
從南京東路移動互聯網技術有限公司開發的多媒體網關,通過藍牙設備之間的信息傳輸,使家庭的每個設備都可以連接在一起,共同使用于固網,互聯網和其他網絡之間。這是什么,這就是流行在今天的家庭網絡,可以通過網絡交換信息,這使我們的家庭交流更方便,其工作原理是在操作系統的控制下,使用本機的硬件設備和各種執行機構,對于歸屬網絡中的個別設備進行控制和檢查活動。
2.3 移動數據庫
中國人正在開發自己的移動數據庫,主要是通過嵌入式系統,使得移動終端可以同步服務器,數據將被帶入到上述移動終端,使得它可以在一定的時間內訪問相關的資源數據庫,也可以移動數據庫,例如,病人在救護車上搶救的過程中,醫務人員可以在汽車上查詢附近的醫院。
總之,在快速發展、科技日新月異的今天,嵌入式產品將會有更加廣泛的應用。我們相信,只要發現嵌入式產品的發展規律,就可以滿足市場的需求,而我們也將能夠開發出越來越多越來越好的嵌入式產品。
參考文獻
[1] 張勇.項目比較法在嵌入式系統實訓教學模式中的應用探討[J].網絡與信息,2012.
[2] 羅麗麗,尹俊文,毛曉光.基于Hi3510和Linux2.6內核嵌入式系統的存儲研究與應用[J].計算機研究與發展,2009.
[3] 王磊,吉木斯.廠礦用繼電保護和自動裝置設計淺析[J].電力系統保護與控制,2009.