第1章 嵌入式系統(tǒng)基礎
1.1 嵌入式系統(tǒng)概述
1.1.1 嵌入式系統(tǒng)的基本概念
1.1.2 嵌入式系統(tǒng)的體系結構
1.1.3 幾種常用的嵌入式操作系統(tǒng)
1.1.4 嵌入式系統(tǒng)發(fā)展趨勢
1.2 ARM處理器硬件開發(fā)平臺
1.2.1 嵌入式處理器簡介
1.2.2 ARM處理器簡介
1.2.3 S3C2410處理器介紹
1.3 嵌入式軟件開發(fā)流程
1.3.1 嵌入式系統(tǒng)開發(fā)概述
1.3.2 嵌入式軟件開發(fā)概述
1.4 實驗內容:使用JTAG燒寫NAND Flash
小結
思考與練習
第2章 嵌入式Linux C語言程序開發(fā)工具
2.1 嵌入式Linux下C語言概述
2.2 編輯器vim
2.2.1 vim的基本模式
2.2.2 vim的基本操作
2.3 編譯器gcc
2.3.1 gcc的簡介
2.3.2 gcc的編譯流程
2.3.3 gcc的常用編譯選項
2.4 調試器GDB
2.4.1 gdb使用流程
2.4.2 gdb基本命令
2.4.3 gdbserver遠程調試
2.5 make工程管理器
2.5.1 makefile基本結構
2.5.2 makefile變量
2.5.3 makefile規(guī)則
2.5.4 make管理器的使用
2.6 autotools
2.6.1 autotools使用流程
2.6.2 使用autotools所生成的makefile
2.7 實驗內容
2.7.1 vim使用練習
2.7.2 用gdb調試程序的bug
2.7.3 編寫包含多文件的makefile
2.7.4 使用autotools生成包含多文件的makefile
小結
思考與練習
第3章 嵌入式Linux C語言基礎
3.1 預處理
3.1.1 預定義
3.1.2 文件包含
3.1.3 條件編譯
3.2 C語言中的內存分配
3.2.1 C語言程序所占內存分類
3.2.2 堆和棧的區(qū)別
3.3 程序的可移植性考慮
3.3.1 字長和數據類型
3.3.2 數據對齊
3.3.3 字節(jié)順序
3.4 C和匯編的接口
3.4.1 內嵌匯編的語法
3.4.2 編譯器優(yōu)化介紹
3.4.3 C語言關鍵字volatile
3.4.4 memory描述符
3.5 ARM Linux內核常見數據結構
3.5.1 鏈表
3.5.2 樹、二叉樹、平衡樹
3.5.3 哈希表
小結
思考與練習
第4章 嵌入式Linux開發(fā)環(huán)境的搭建
4.1 構建嵌入式Linux開發(fā)環(huán)境
4.1.1 嵌入式交叉編譯環(huán)境搭建
4.1.2 主機交叉開發(fā)環(huán)境配置
4.2 Bootloader
4.2.1 Bootloader的種類
4.2.2 U-Boot編譯與使用
4.2.3 U-Boot移植
4.3 Linux內核與移植
4.3.1 Linux內核結構
4.3.2 Linux內核配置與編譯
4.3.3 Linux內核移植
4.4 嵌入式文件系統(tǒng)構建
小結
思考與練習
第5章 嵌入式Linux文件I/O編程
第6章 嵌入式Linux多任務編程
第7章 嵌入式Linux網絡編程
第8章 嵌入式Linux設備驅動編程
第9章 Qt圖形編程
第10章 綜合實例——視頻監(jiān)控系統(tǒng)
參考文獻