當前位置: 首頁 > 原創(chuàng)圖書 >《嵌入式Linux應用開發(fā)教程》圖書介紹
· 多年嵌入式人才培養(yǎng)及項目研發(fā)經(jīng)驗總結
· 數(shù)百家企業(yè)嵌入式研發(fā)崗位人才需求匯總
· 數(shù)十所嵌入式專業(yè)大學院校教學現(xiàn)狀調(diào)研
· 側重實踐及案例分析并輔以代碼加以講解
本書重點介紹嵌入式linux應用開發(fā)的基本概念和核心理論。全書分為3大部分,包括嵌入式linux開發(fā)基礎知識、嵌入式linux c編程知識和嵌入式linux應用開發(fā)知識。本書在講解中給出了翔實的實例,并在部分章節(jié)的后面詳細設計并分析了貼近實踐的實驗內(nèi)容。
本書可作為高等院校計算機類、電子類、電氣類、控制類專業(yè)高年級本科生、研究生學習嵌入式linux應用開發(fā)的教材,也可供希望轉入嵌入式領域的科研和工程技術人員參考使用。...
第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 實驗內(nèi)容:使用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 調(diào)試器gdb
2.4.1 gdb使用流程
2.4.2 gdb基本命令
2.4.3 gdbserver遠程調(diào)試
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 實驗內(nèi)容
2.7.1 vim使用練習
2.7.2 用gdb調(diào)試程序的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語言中的內(nèi)存分配
3.2.1 c語言程序所占內(nèi)存分類
3.2.2 堆和棧的區(qū)別
3.3 程序的可移植性考慮
3.3.1 字長和數(shù)據(jù)類型
3.3.2 數(shù)據(jù)對齊
3.3.3 字節(jié)順序
3.4 c和匯編的接口
3.4.1 內(nèi)嵌匯編的語法
3.4.2 編譯器優(yōu)化介紹
3.4.3 c語言關鍵字volatile
3.4.4 memory描述符
3.5 arm linux內(nèi)核常見數(shù)據(jù)結構
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內(nèi)核與移植
4.3.1 linux內(nèi)核結構
4.3.2 linux內(nèi)核配置與編譯
4.3.3 linux內(nèi)核移植
4.4 嵌入式文件系統(tǒng)構建
小結
思考與練習
第5章 嵌入式linux文件i/o編程
5.1 linux系統(tǒng)調(diào)用及用戶編程接口
5.1.1 系統(tǒng)調(diào)用
5.1.2 用戶編程接口
5.1.3 系統(tǒng)命令
5.2 linux文件i/o系統(tǒng)概述
5.2.1 虛擬文件系統(tǒng)
5.2.2 通用文件模型
5.2.3 linux中文件及文件描述符
5.3 底層文件i/o操作
5.3.1 基本文件操作
5.3.2 文件鎖
5.3.3 多路復用
5.4 嵌入式linux串口應用編程
5.4.1 串口概述
5.4.2 串口設置詳解
5.4.3 串口使用詳解
5.5 標準i/o編程
5.5.1 基本操作
5.5.2 其他操作
5.6 實驗內(nèi)容
5.6.1 文件讀寫及上鎖
5.6.2 多路復用式串口操作
小結
思考與練習
第6章 嵌入式linux多任務編程
6.1 linux下多任務概述
6.1.1 任務
6.1.2 進程
6.1.3 線程
6.2 進程控制編程
6.2.1 進程編程基礎
6.2.2 linux守護進程
6.3 進程間通信
6.3.1 linux下進程間通信概述
6.3.2 管道通信
6.3.3 信號通信
6.3.4 信號量
6.3.5 共享內(nèi)存
6.3.6 消息隊列
6.4 多線程編程
6.4.1 線程基本編程
6.4.2 線程之間的同步與互斥
6.4.3 線程屬性
6.5 實驗內(nèi)容
6.5.1 編寫多進程程序
6.5.2 編寫守護進程
6.5.3 有名管道通信實驗
6.5.4 共享內(nèi)存實驗
6.5.5 多線程實驗
小結
思考與練習
第7章 嵌入式linux網(wǎng)絡編程
7.1 tcp/ip概述
7.1.1 tcp/ip的分層模型
7.1.2 tcp/ip分層模型特點
7.1.3 tcp/ip核心協(xié)議
7.2 網(wǎng)絡編程基本知識
7.2.1 套接字概述
7.2.2 地址及順序處理
7.2.3 套接字編程
7.2.4 編程實例
7.3 網(wǎng)絡高級編程
7.4 web服務器
7.4.1 web服務器的工作原理
7.4.2 web服務器的編程實現(xiàn)
7.4.3 運行web服務器
7.5 實驗內(nèi)容:ntp的客戶端實現(xiàn)
小結
思考與練習
第8章 嵌入式linux設備驅動編程
8.1 設備驅動編程基礎
8.1.1 linux設備驅動概述
8.1.2 linux內(nèi)核模塊編程
8.2 字符設備驅動編程
8.2.1 字符設備驅動編寫流程
8.2.2 重要數(shù)據(jù)結構
8.2.3 設備驅動程序主要組成
8.3 gpio驅動程序實例
8.3.1 gpio工作原理
8.3.2 gpio驅動程序
8.4 按鍵驅動程序實例
8.4.1 中斷編程
8.4.2 按鍵工作原理
8.4.3 按鍵驅動程序
8.4.4 按鍵驅動的測試程序
小結
思考與練習
第9章 qt圖形編程
9.1 嵌入式gui簡介
9.1.1 qt/embedded
9.1.2 minigui
9.1.3 microwindows、tiny x等
9.2 qt/embedded開發(fā)入門
9.2.1 qt/embedded介紹
9.2.2 qt/embedded信號和插槽機制
9.2.3 搭建qt/embedded開發(fā)環(huán)境
9.2.4 qt/embedded窗口部件
9.2.5 qt/embedded圖形界面編程
9.2.6 qt/embedded對話框設計
9.3 實驗內(nèi)容:使用qt編寫“hello,world”程序
小結
思考與練習
第10章 綜合實例——視頻監(jiān)控系統(tǒng)
10.1 視頻監(jiān)控系統(tǒng)概述
10.1.1 系統(tǒng)組成
10.1.2 音視頻服務器
10.1.3 音視頻客戶端
10.1.4 通信傳輸控制協(xié)議
10.2 基本數(shù)據(jù)結構
10.3 功能實現(xiàn)
10.3.1 傳輸控制
10.3.2 用戶檢驗
10.3.3 控制命令處理
10.3.4 云臺轉動控制
10.3.5 線程相關
小結
思考與練習
參考文獻