Linux基礎知識
1,Linux和Unix Shell編程指南
c語言基礎
1,C Primer Plus,第5版,作者Stephen Prata。
2.《C語言程序設計》,第二版,Brian w . Kernigan David m . Rithie(K & amp;r)開
3、《UNIX環境下的高級編程,第二版》(APUE)
4.嵌入式Linux應用開發詳解。
Linux內核
1,深入了解Linux內核(第三版)
2.毛和胡對Linux內核源代碼的場景分析
研發方向
1、《UNIX網絡編程》( UNP)
2.TCP/IP的詳細解釋
3.Linux內核編程
4.Linux設備驅動程序開發(LDD)
5.楊Linux高級編程
硬件基礎
1,杜春蕾《ARM架構與編程》
2、S3C2410數據表
基本英語
1,計算機與通信英語
系統課程
1,嵌入式系統-架構、編程和設計
2.嵌入式系統-使用開放源代碼和StrongARM/Xscale處理器,作者毛和胡。
3、《構建嵌入式Linux系統》
4.楊嵌入式ARM系統原理及實例開發。
理論基礎
1,算法介紹
2.數據結構(C語言版本)
3.計算機組織與架構?性能分析”
4,“對計算機系統的深刻理解”,作者Randal E. Bryant David O''Hallaron
5.操作系統:本質和設計原則
6.編譯原則
7.數據通信和計算機網絡
8.數據壓縮的原理及應用
這是別人推薦的幾本書,我也在學習嵌入式的東西。原來基礎不如妳,但希望這些書對妳有幫助。
以下是牛人的壹些嵌入式學習經驗,供大家參考:
1,基礎知識:
目標:我能理解硬件的工作原理,但專註於嵌入式軟件,尤其是操作系統級軟件將是我的優勢。
科目:數字電路、計算機組成原理、嵌入式微處理器結構。
匯編語言,C/C++,編譯原理,離散數學。
數據結構與算法,操作系統,軟件工程,網絡,數據庫。
方法:科目雖多,但都是簡單的基礎,大部分已經掌握。不必全部學習,但可以根據需要選修。
主要書籍:《c++編程語言》(還沒來得及看)和《數據結構——C2》。
2.學習linux:
目的:深入掌握linux系統。
方法:使用linux-> LINXU系統編程開發->驅動程序開發分析linux內核。先看深,再解釋原理。看了幾遍,看形勢分析,對比深度,兩本書交叉,深度是綱,情感是旨。分析是0.11版本,適合學習。最後,深入代碼。
主要書籍:《linux內核全解析》、《unix環境下的高級編程》、《linux內核的深入理解》、《場景分析與源碼生成》。
3.了解嵌入式linux:
目的:掌握嵌入式處理器及其系統。
方法:(1)嵌入式微處理器的結構與應用:只講arm的原理與組裝,不重復x86。
(2)嵌入式操作系統類:ucOS/II簡單,開源,可用於入門。然後深入學習uClinux。
(3)必須有開發板(arm9以上),有參加培訓的條件(可以進步很快,可以交壹些朋友)。
主要著作:毛的嵌入式系統等arm9手冊和arm匯編指令。
4.深入研究:
壹、數字圖像壓縮技術:主要應掌握MPEG、mp3等編解碼算法和技術。
b通信協議及編程技術:TCP/IP協議、802.11、藍牙、GPRS、GSM、CDMA等。
C.網絡與信息安全技術:如加密技術、數字證書CA等。
d、DSP技術:數字信號處理,DSP處理器通過硬件實現數字信號處理算法。
註:太多細節不解釋,可根據實際情況調整。重點是1和3,不壹定要全序做。之所以要學c++是因為c++不僅僅是壹門語言,壹個工具,更是壹門藝術,壹種文化,壹種哲學,但不是用來炫耀的東西。對於linux內核來說,也需要學習編程,閱讀壹些優秀的代碼。
註意:要學會舉壹反三,基礎紮實。妳可以簡單地通過觀察來學習很多東西。要成為壹名合格的程序員,必須精通至少壹門編程語言,並具有良好的邏輯思維。我們必須把理論和實踐結合起來。
不要盲目鉆研技術。雖然很難找到時間,但也要留點空間完善其他愛好,比如宇宙、素描、機械、管理、心理學、遊戲、科幻電影。還有些事情是妳不想做卻又不得不做的!
技術是通過編程來編程的。千萬不要夢想壹步登天,不要做壹個浮躁的人,不要覺得路漫漫其修遠兮。是編程,編程,編程,編程!機會來了再創業(不要相信奇跡,盲目的成功很難,即使成功了也不壹定有多大的發展空間)。
嵌入式學習的關鍵在於個人興趣。不要怕困難,堅持不懈,多向前輩請教。