學習網址:
一、Linux的優勢
1、廣泛的硬件支持
Linux能夠支持x86、ARM、MIPS、ALPHA、PowerPC等多種體系結構,目前已經成功移植到數十種硬件平臺,幾乎能夠運行在所有流行的CPU上。
Linux有著異常豐富的驅動程序資源,支持各種主流硬件設備和最新硬件技術,甚至可以在沒有存儲管理單元(MMU)的處理器上運行,這 些都進一步促進了
Linux在嵌入式系統中的應用。
2、內核高效穩定
Linux內核的高效和穩定已經在各個領域內得到了大量事實的驗證,Linux的內核設計非常精巧,分成進程調度、內存管理、進程間通信、虛擬文件 系統和網絡接口
五大部分,其獨特的模塊機制可以根據用戶的需要,實時地將某些模塊插入到內核或從內核中移走。這些特性使得Linux系統內核可以裁剪得非 常小巧,很適合于
嵌入式系統的需要。
3、開放源碼,軟件豐富
Linux是開放源代碼的自由操作系統,它為用戶提供了最大限度的自由度,由于嵌入式系統千差萬別,往往需要針對具體的應用進行修改和優化,因而獲得
源代碼就變得至關重要了。Linux的軟件資源十分豐富,每一種通用程序在Linux上幾乎都可以找到,并且數量還在不斷增加。在Linux上開發嵌入式應用軟件
一般不用從頭做起,而是可以選擇一個類似的自由軟件做為原型,在其上進行二次開發。
4、優秀的開發工具
開發嵌入式系統的關鍵是需要有一套完善的開發和調試工具。傳統的嵌入式開發調試工具是在線仿真器(In-Circuit Emulator,ICE),它通過取代目標板的微處理器,
給目標程序提供一個完整的仿真環境,從而使開發者能夠非常清楚地了解到程序在目標板上的工作狀 態,便于監視和調試程序。在線仿真器的價格非常昂貴,
而且只適合做非常底層的調試,如果使用的是嵌入式Linux,一旦軟硬件能夠支持正常的串口功能時, 即使不用在線仿真器也可以很好地進行開發和調試工作,
從而節省了一筆不小的開發費用。嵌入式Linux為開發者提供了一套完整的工具鏈(Tool Chain),它利用GNU的gcc做編譯器,用gdb、kgdb、xgdb做調試工具,
能夠很方便地實現從操作系統到應用軟件各個級別的調試。
5、完善的網絡通信和文件管理機制
Linux至誕生之日起就與Internet密不可分,支持所有標準的Internet網絡協議,并且很容易移植到嵌入式系統當中。此外,Linux還支持ext2、fat16、fat32、romfs等
文件系統,這些都為開發嵌入式系統應用打下了很好的基礎。
二、開發流程
嵌入式Linux開發環境搭建