注冊 | 登錄讀書好,好讀書,讀好書!
讀書網-DuShu.com
當前位置: 首頁出版圖書科學技術計算機/網絡軟件與程序設計C/C++及其相關嵌入式Linux C語言應用程序設計

嵌入式Linux C語言應用程序設計

嵌入式Linux C語言應用程序設計

定 價:¥49.00

作 者: 華清遠見嵌入式培訓中心 編著
出版社: 人民郵電出版社
叢編項:
標 簽: VC++

購買這本書可以去


ISBN: 9787115162304 出版時間: 2007-08-01 包裝: 平裝
開本: 16開 頁數: 386 字數:  

內容簡介

  嵌入式系統(tǒng)是現在最熱門的計算機應用領域之一,嵌入式Linux是應用最廣泛的嵌入式操作系統(tǒng)之一,嵌入式C語言在其中起著至關重要的作用?!”緯卜?3章,全面講解了嵌入式系統(tǒng)基礎,嵌入式Linux C語言開發(fā)工具、語言基礎,文件I/O相關實例,ARM Linux進程線程開發(fā)實例,ARM Linux網絡開發(fā)實例,嵌入式Linux設備驅動開發(fā)以及視頻監(jiān)控系統(tǒng)實例?!”緯勺鳛榇笾袑T盒G度胧较嚓P專業(yè)本科生、研究生的教材,也可供廣大希望轉入嵌入式領域的科研和工程技術人員使用。

作者簡介

  嵌入式C語言在其中起著至關重要的作用。本書共分13章

圖書目錄

第1章 嵌入式系統(tǒng)基礎知識 1
1.1 嵌入式系統(tǒng)概述 1
1.1.1 嵌入式系統(tǒng)的發(fā)展史 2
1.1.2 嵌入式系統(tǒng)的定義與特點 3
1.1.3 嵌入式系統(tǒng)的特點 4
1.2 嵌入式系統(tǒng)的組成 5
1.2.1 嵌入式系統(tǒng)的硬件架構 5
1.2.2 嵌入式操作系統(tǒng) 8
1.2.3 嵌入式應用軟件 10
1.3 ARM處理器平臺介紹 11
1.3.1 ARM處理器簡介 11
1.3.2 ARM處理器系列 12
1.3.3 ARM體系結構簡介 16
1.3.4 S3C2410處理器簡介 17
1.4 嵌入式系統(tǒng)硬件平臺選型 21
1.4.1 硬件平臺的選擇 21
1.4.2 ARM處理器選型 22
1.5 嵌入式系統(tǒng)開發(fā)概述 25
1.5.1 嵌入式系統(tǒng)開發(fā)流程 25
1.5.2 嵌入式軟件開發(fā)流程 25
本章小結 29
動手練練 30
第2章 嵌入式Linux C語言開發(fā)工具 31
2.1 嵌入式Linux下C語言概述 31
2.1.1 C語言簡史 31
2.1.2 C語言特點 32
2.1.3 嵌入式Linux C語言編程環(huán)境 33
2.2 嵌入式Linux編輯器vi的使用 33
2.2.1 vi的基本模式 34
2.2.2 vi的基本操作 34
2.2.3 vi的使用實例分析 38
2.3 嵌入式Linux編譯器GCC的使用 40
2.3.1 GCC概述 40
2.3.2 GCC編譯流程分析 40
2.3.3 GCC警告提示 43
2.3.4 GCC使用庫函數 45
2.3.5 GCC代碼優(yōu)化 46
2.4 嵌入式Linux調試器GDB的使用 47
2.4.1 GDB使用實例 47
2.4.2 設置/刪除斷點 50
2.4.3 數據相關命令 51
2.4.4 調試運行環(huán)境相關命令 52
2.4.5 堆棧相關命令 52
2.5 make工程管理器 53
2.5.1 Makefile基本結構 53
2.5.2 Makefile變量 55
2.5.3 Makefile規(guī)則 58
2.5.4 make使用 59
2.6 Emacs綜合編輯器 59
2.6.1 Emacs的啟動與退出 60
2.6.2 Emacs的基本編輯 61
2.6.3 Emacs的C模式 63
2.6.4 Emacs的Shell模式 66
本章小結 67
動手練練 67
第3章 構建嵌入式Linux系統(tǒng) 68
3.1 嵌入式系統(tǒng)開發(fā)環(huán)境的構建 68
3.1.1 嵌入式交叉編譯環(huán)境搭建 68
3.1.2 minicom和超級終端配置及使用 72
3.1.3 宿主機服務配置 79
3.2 Bootloader 83
3.2.1 Bootloader的概念 84
3.2.2 Bootloader啟動流程分析 84
3.2.3 U-Boot概述 85
3.2.4 U-Boot源碼導讀 86
3.3 編譯嵌入式Linux內核 86
3.4 Linux內核目錄結構 90
3.5 制作文件系統(tǒng) 91
本章小結 92
動手練練 92
第4章 嵌入式Linux C語言基礎——數據、表達式 93
4.1 嵌入式Linux C語言概述 93
4.2 基本數據類型 94
4.2.1 整型家族 94
4.2.2 實型家族 96
4.2.3 字符型家族 98
4.2.4 枚舉家族 99
4.2.5 指針家族 100
4.3 變量與常量 101
4.3.1 變量的定義 101
4.3.2 typedef 107
4.3.3 常量定義 108
4.3.4 ARM-Linux基本數據類型綜合應用實例 109
4.4 運算符與表達式 111
4.4.1 算術運算符和表達式 112
4.4.2 賦值運算符和表達式 114
4.4.3 逗號運算符和表達式 116
4.4.4 位運算符和表達式 116
4.4.5 關系運算符和表達式 118
4.4.6 邏輯運算符和表達式 119
4.4.7 sizeof操作符 121
4.4.8 條件(?)運算符 122
4.4.9 運算符優(yōu)先級總結 123
4.4.10 ARM-Linux運算符綜合實例 125
本章小結 129
動手練練 129
第5章 嵌入式Linux C語言基礎——控制語句及函數 130
5.1 嵌入式Linux C語言程序結構概述 130
5.1.1 嵌入式Linux C語言3種程序結構 130
5.1.2 嵌入式Linux C語言基本語句 131
5.2 選擇語句 134
5.2.1 if語句 134
5.2.2 switch語句 136
5.2.3 ARM-Linux選擇語句應用實例 138
5.3 循環(huán)語句 139
5.3.1 while和do-while語句 139
5.3.2 for循環(huán)語句 140
5.3.3 break和continue語句 141
5.3.4 ARM-Linux循環(huán)語句應用實例 143
5.4 goto語句 144
5.4.1 goto語句語法 144
5.4.2 ARM-Linux中goto語句應用實例 145
5.5 函數的定義與聲明 146
5.5.1 C語言函數概述 146
5.5.2 函數定義 147
5.5.3 函數聲明 148
5.5.4 ARM-Linux函數定義與聲明實例 149
5.6 函數的參數、值和基本調用 150
5.6.1 函數的參數 150
5.6.2 函數的值 151
5.6.3 函數的基本調用 151
5.7 函數的嵌套、遞歸調用 152
5.7.1 函數的嵌套調用 152
5.7.2 函數的遞歸調用 152
5.7.3 ARM-Linux函數調用應用實例 155
本章小結 156
動手練練 156
第6章 嵌入式Linux C語言基礎——數組、指針與結構 158
6.1 數組 158
6.1.1 一維數組 158
6.1.2 字符串 161
6.1.3 二維數組 163
6.2 指針 164
6.2.1 指針的概念 164
6.2.2 指針變量的操作 166
6.2.3 指針和數組 173
6.2.4 指針高級議題 178
6.3 結構體與聯合 182
6.3.1 結構體 182
6.3.2 聯合 186
6.3.3 ARM-Linux指針、結構體使用實例 187
本章小結 189
動手練練 189
第7章 嵌入式Linux C語言基礎——高級議題 190
7.1 預處理 190
7.1.1 預處理的概念 190
7.1.2 預定義 191
7.1.3 文件包含 196
7.1.4 條件編譯 197
7.2 C語言中的內存分配 199
7.2.1 C語言程序所占內存分類 199
7.2.2 堆和棧的區(qū)別 200
7.3 嵌入式Linux可移植性考慮 201
7.3.1 字長和數據類型 201
7.3.2 數據對齊 203
7.3.3 字節(jié)順序 203
7.4 C和匯編的接口 203
7.4.1 內嵌匯編的語法 204
7.4.2 編譯器優(yōu)化介紹 206
7.4.3 C語言關鍵字volatile 207
7.4.4 memory描述符 207
7.4.5 gcc對內嵌匯編語言的處理方式 207
本章小結 209
動手練練 209
第8章 嵌入式Linux C語言基礎——ARM Linux內核常見數據結構 210
8.1 鏈表 210
8.1.1 鏈表概述 210
8.1.2 單向鏈表 211
8.1.3 雙向鏈表 217
8.1.4 循環(huán)鏈表 219
8.1.5 ARM Linux中鏈表使用實例 219
8.2 樹、二叉樹、平衡樹 221
8.2.1 樹 221
8.2.2 二叉樹 222
8.2.3 平衡樹 229
8.2.4 ARM Linux中紅黑樹使用實例 230
8.3 哈希表 232
8.3.1 哈希表的概念及作用 232
8.3.2 哈希表的構造方法 234
8.3.3 哈希表的處理沖突方法 235
8.3.4 ARM Linux中哈希表使用實例 236
本章小結 238
動手練練 239
第9章 文件I/O相關實例 240
9.1 Linux系統(tǒng)調用及用戶編程接口(API) 240
9.1.1 系統(tǒng)調用 241
9.1.2 用戶編程接口(API) 241
9.1.3 系統(tǒng)命令 241
9.2 ARM Linux文件I/O系統(tǒng)概述 242
9.2.1 虛擬文件系統(tǒng)(VFS) 242
9.2.2 通用文件模型 243
9.2.3 ARM Linux的設備文件 248
9.3 文件I/O操作 248
9.3.1 不帶緩存的文件I/O操作 248
9.3.2 標準I/O開發(fā) 258
9.4 嵌入式Linux串口應用開發(fā) 261
9.4.1 串口概述 261
9.4.2 串口設置詳解 262
9.4.3 串口使用詳解 266
本章小結 269
動手練練 269
第10章 ARM Linux進程線程開發(fā)實例 270
10.1 ARM Linux進程線程管理 270
10.1.1 進程描述符及任務結構 270
10.1.2 進程的調度 273
10.1.3 Linux中的線程 274
10.1.4 Linux中進程間通信 275
10.2 ARM Linux進程控制相關API 276
10.3 ARM Linux進程間通信API 282
10.3.1 管道通信 282
10.3.2 信號通信 284
10.3.3 共享內存 289
10.3.4 消息隊列 290
10.4 ARM Linux線程相關API 293
10.5 Linux守護進程 298
10.5.1 守護進程概述 298
10.5.2 編寫規(guī)則 298
10.5.3 守護進程實例 300
本章小結 301
動手練練 302
第11章 ARM Linux網絡開發(fā)實例 303
11.1 TCP/IP協(xié)議簡介 303
11.1.1 TCP/IP的分層模型 303
11.1.2 TCP/IP分層模型特點 304
11.1.3 TCP/IP核心協(xié)議 305
11.2 網絡基礎編程 308
11.2.1 socket概述 308
11.2.2 地址及順序處理 309
11.2.3 socket基礎編程 313
11.3 Web服務器 319
11.3.1 Web服務器功能 319
11.3.2 Web服務器協(xié)議 320
11.3.3 Web服務器協(xié)議 321
11.3.4 運行Web服務器 326
11.4 traceroute程序實例 326
11.4.1 traceroute原理簡介 326
11.4.2 traceroute實例與分析 327
11.4.3 traceroute實例運行結果 332
本章小結 332
動手練練 333
第12章 嵌入式Linux設備驅動開發(fā) 334
12.1 設備驅動概述 334
12.1.1 設備驅動簡介 334
12.1.2 設備驅動程序的特點 335
12.2 模塊編程 336
12.2.1 模塊編程簡介 336
12.2.2 模塊相關命令 336
12.2.3 模塊編程流程 337
12.3 字符設備驅動編寫 338
12.4 塊設備驅動編寫 347
12.4.1 塊設備驅動程序描述符 347
12.4.2 塊設備驅動編寫流程 348
12.5 簡單的skull驅動實例 354
12.5.1 驅動簡介 354
12.5.2 驅動編寫流程 354
12.5.3 結果分析 357
12.6 LCD驅動編寫實例 358
12.6.1 LCD工作原理 358
12.6.2 LCD驅動實例 360
本章小結 367
動手練練 367
第13章 視頻監(jiān)控系統(tǒng)  368
13.1 視頻監(jiān)控系統(tǒng)概述 368
13.1.1 系統(tǒng)組成 368
13.1.2 音視頻服務器 369
13.1.3 音視頻客戶端 370
13.1.4 通信傳輸控制協(xié)議 370
13.2 基本數據結構 373
13.3 功能實現 375
13.3.1 傳輸控制 375
13.3.2 用戶檢驗 379
13.3.3 控制命令處理 380
13.3.4 云臺轉動控制 381
13.3.5 線程相關 385
本章小結 386
動手練練 386


本目錄推薦

掃描二維碼
Copyright ? 讀書網 www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網安備 42010302001612號