(1) C語言是所有編程語言中的強者,單片機、DSP、類似ARM的種種芯片的編程都可以用C語言搞定),因此必須非常熟練的掌握。
推薦書籍:《The C Programming Language》 這本經典的教材是老外寫的,也有中譯版本。
(2) 操作系統原理,是必需的,如果妳是計算機專業畢業那也就無所謂了,如果是非計算機專業的就必須找壹本比較淺顯的計算機原理書籍看壹看,把啥叫“進程”“線程”“系統調度”等等基本問題搞清楚。
(3) Linux操作系統就是用C語言編寫的,所以妳也應該先學習下Linux方面的編程,只有妳會應用了,才能近壹步去了解其內核的精髓。
推薦書籍:《UNIX環境高級編程》(第2版)
(4) 了解ARM的架構,原理,以及其匯編指令,我們在嵌入式開發中,壹般很少去寫匯編,但是最起碼的要求是能夠看懂arm匯編。
(5) 系統移植的時候,就需要妳從最下層的bootloader開始,然後內核移植,文件系統移植等。而移植這部分對硬件的依賴是非常大的,其配置步驟也相對復雜,也沒有太多詳細資料。
(6) 驅動開發
linux驅動程序設計既是個極富有挑戰性的領域,又是壹個博大精深的內容。
linux驅動程序設計本質是屬於linux內核編程範疇的,因而是對linux內核和內核編程是有要求的。在學習前妳要想了解linux內核的組成,因為每壹部分要詳細研究的話足夠可以擴展成壹本厚書。
嵌入式的應用主要是幾個方向,
壹是系統開發:側重開發環境搭建、內核原理、交叉編譯等;
二是嵌入式Linux應用開發:側重Linux應用編程、內核編譯、系統調用;
三是底層驅動開發:側重嵌入式Linux系統下的驅動開發、內核的深入分析。
不過初進門者主要往系統開發和應用開發發展,有了相關工作經驗再進壹步向底層驅動靠。
嵌入式課程的目標,想自學完課程,要掌握以下知識點:
◆ Linux命令,工具和C編程基礎 ◆ 嵌入式Linux C語言強化
◆ 嵌入式Linux上的C編程訓練 ◆ Linux高級編程及編程訓練
◆ 嵌入式ARM處理器體系結構及編程訓練
◆ 嵌入式Linux內核環境搭建和編程訓練
◆ 嵌入式Linux驅動理論及驅動程序開發訓練
◆ Android應用研究和系統開發 ◆ Android體系結構和系統移植
◆ 嵌入式ARM Linux項目實踐和訓練
上面這個嵌入式課程信息是從東方賽富3G嵌入式學院網站COPY下來的,僅供參考;hehe呵呵,若感興趣想進壹步了解的話,只有去網上咨詢或實地考察了。