初級階段:熟悉基本開發流程和方法階段。 這一階段需要掌握的知識和技能包括:1.)嵌入式系統硬件設計流程;2.)嵌入式系統硬件調試;3.)嵌入式系統軟件下載、調試、固化;4.)Bootloader編譯、移植、裁剪、調試、固化;5.)Linux內核交叉編譯環境創建;6.)Linux內核編譯;7.)Linux內核下載、調試、固化。 這一階段需要做的事情包括:起步人員開在相關書籍(如原書)指導下,參考一套市場上成熟的嵌入式開發套件,或者直接使用相關原理圖、pcb圖、及相關配件(如調試器原理圖、pcb),自己親自去制板、采購元器件、焊接、調試,然后親自編譯、下載、調試、固化,自己把這個過程走一遍,就把嵌入式Linux開發流程和方法熟悉了,為以后的進一步攀登打下了堅實的基本功底。 中級階段:經驗積累、技能增長階段。 這一階段需要掌握的知識和技能包括:1.)嵌入式系統軟硬件疑難問題調試解決;2.)Linux內核移植、裁剪、調試;3.)各種設備驅動程序開發與調試。 這一階段需要做的事情包括:這個階段可以在一個比較大的平臺(各種外圍設備如:usb接口、gps、3G、以太網口、wifi等)上開發、移植、調試各種設備驅動程序,多看一些外設芯片數據手冊。多看一些接口標準和協議手冊,在開發的過程中積累更多的經驗和技能。 高級階段:能夠從系統原理的高度分析解決問題。 這一階段需要掌握的知識和技能包括:1.)精通各種架構嵌入式處理器內部結構和原理,能夠將它們融會貫通;2.)Linux內核疑難問題調試、解決;3.)Linux內核優化;4.)能夠將Linux內核移植到Linux已經支持的某種架構的新型號處理器平臺上。 這一階段需要做的事情包括:多在一些不同架構、不同型號的處理器平臺上做開發,閱讀不同處理器的芯片手冊,比較理解各種處理器的內部架構原理,還可以嘗試修改內核源代碼,加深對Linux內核的理解,優化Linux內核。 專家級別:對Linux內核各組件原理有透徹理解。 這一階段需要掌握的知識和技能包括:1.)深入理解Linux內核的組織架構。2.)深入理解Linux內核各部分的實現原理;3.)能夠根據需要隨心所欲增減Linux內核組件和組件中的模塊;4.)能夠將Linux內核移植到Linux尚未支持的新型架構處理器平臺上。 此階段需要做的事情包括:最核心的事情就是靜心閱讀Linux源碼,參悟其中的精髓。因為不管做了多長時間、多少項目的開發人員,其實只是增長積累了經驗、技能和方法,而真正涉及Linux內核精髓,從而去改動的并不多,所以他們雖然算的上是Linux開發高手,但Linux內核理論水平并不高,這必須專門去系統閱讀Linux內核,以前的經驗會讓你更容易理解Linux內核原理,而這又可以指導今后的開發,這樣理論和實踐相互促進相互提高。堅持下去,你的理論水平和實戰能力終將得到質的飛躍,成為真正的嵌入式系統和Linux內核專家,那時你就能“不管風吹浪打,勝似閑庭信步” “悠哉,壯哉” 可敬的同學們,道友們,大家現在榮升到哪一界別了? 本段可能只說明了嵌入式Linux的學習提高進階過程,但萬法相通,我想,對于如今人氣最旺盛的Android開發,貴族氣質的IOS,再或者是不甘落后的Windows Phone等嵌入式系統都有類似的艱苦過程吧。
|