嵌入式Linux開(kāi)發(fā)技術(shù)
定 價(jià):88 元
叢書(shū)名:嵌入式技術(shù)與應(yīng)用叢書(shū)
當(dāng)前圖書(shū)已被 68 所學(xué)校薦購(gòu)過(guò)!
查看明細(xì)
- 作者:廖建尚
- 出版時(shí)間:2021/12/1
- ISBN:9787121423741
- 出 版 社:電子工業(yè)出版社
- 中圖法分類(lèi):TP316.89
- 頁(yè)碼:308
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書(shū)以案例的形式,詳細(xì)介紹嵌入式Linux開(kāi)發(fā)技術(shù),由淺入深地分析嵌入式系統(tǒng)、嵌入式Linux開(kāi)發(fā)環(huán)境、嵌入式Linux應(yīng)用開(kāi)發(fā)技術(shù)和嵌入式Linux驅(qū)動(dòng)開(kāi)發(fā)技術(shù),邊學(xué)習(xí)理論知識(shí)邊開(kāi)發(fā),將理論學(xué)習(xí)和工程實(shí)踐結(jié)合起來(lái),每個(gè)案例均附上完整的開(kāi)發(fā)代碼和配套PPT,可以在源代碼的基礎(chǔ)可以進(jìn)行快速二次開(kāi)發(fā)。
廖建尚,教授,博士。長(zhǎng)期從事模式識(shí)別、物聯(lián)網(wǎng)系統(tǒng)研究。主持廣東省自然基金等省級(jí)以上項(xiàng)目8項(xiàng);發(fā)表論文20多篇,其中SCI和EI收錄10多篇,出版教材著作10多部,授權(quán)專(zhuān)利10多項(xiàng),授權(quán)軟件著作10多項(xiàng)。
目 錄
第1章 嵌入式系統(tǒng)概述 (1)
1.1 嵌入式系統(tǒng)的定義、特點(diǎn)與組成 (1)
1.1.1 嵌入式系統(tǒng)的定義 (1)
1.1.2 嵌入式系統(tǒng)的特點(diǎn) (1)
1.1.3 嵌入式系統(tǒng)的組成 (2)
1.2 嵌入式操作系統(tǒng) (3)
1.3 Linux操作系統(tǒng) (3)
1.3.1 Linux簡(jiǎn)介 (3)
1.3.2 Linux的發(fā)行版本 (4)
1.4 嵌入式技術(shù)的應(yīng)用 (4)
1.5 開(kāi)發(fā)實(shí)踐:認(rèn)知嵌入式系統(tǒng) (5)
1.5.1 嵌入式系統(tǒng)硬件認(rèn)知 (5)
1.5.2 嵌入式系統(tǒng)運(yùn)行測(cè)試 (8)
1.6 小結(jié) (9)
1.7 思考與拓展 (9)
第2章 嵌入式Linux開(kāi)發(fā)環(huán)境 (11)
2.1 Linux的安裝與基本命令 (11)
2.1.1 Linux的安裝與配置 (11)
2.1.2 Linux的軟件包管理機(jī)制 (15)
2.1.3 Linux的Shell與基本命令 (17)
2.1.4 Linux的編輯器 (20)
2.1.5 Shell腳本 (22)
2.1.6 開(kāi)發(fā)實(shí)踐:Linux的安裝與vim編輯器的使用 (28)
2.1.7 小結(jié) (30)
2.1.8 思考與拓展 (30)
2.2 常用的嵌入式開(kāi)發(fā)工具 (30)
2.2.1 嵌入式Linux的開(kāi)發(fā)模式 (30)
2.2.2 遠(yuǎn)程控制工具 (31)
2.2.3 串口通信工具 (32)
2.2.4 文件傳輸工具 (33)
2.2.5 源代碼管理工具 (34)
2.2.6 開(kāi)發(fā)實(shí)踐:嵌入式開(kāi)發(fā)工具的使用 (36)
2.2.7 小結(jié) (38)
2.2.8 思考與拓展 (38)
2.3 Linux的編譯環(huán)境 (38)
2.3.1 Linux程序的開(kāi)發(fā)環(huán)境 (38)
2.3.2 Linux編譯器的安裝與使用 (39)
2.3.3 Linux的動(dòng)態(tài)庫(kù)與靜態(tài)庫(kù) (41)
2.3.4 Linux調(diào)試器的安裝與使用 (42)
2.3.5 Makefile文件的編寫(xiě) (44)
2.3.6 開(kāi)發(fā)實(shí)踐:Linux的編譯環(huán)境 (46)
2.3.7 小結(jié) (49)
2.3.8 思考與拓展 (49)
第3章 嵌入式Linux系統(tǒng)的移植 (51)
3.1 BootLoader的移植與應(yīng)用 (51)
3.1.1 BootLoader簡(jiǎn)介 (51)
3.1.2 U-Boot的移植 (53)
3.1.3 U-Boot的使用 (55)
3.1.4 開(kāi)發(fā)實(shí)踐:U-Boot的編譯 (58)
3.1.5 小結(jié) (60)
3.1.6 思考與拓展 (60)
3.2 Linux的內(nèi)核與配置 (60)
3.2.1 Linux的體系結(jié)構(gòu)與內(nèi)核 (60)
3.2.2 Linux內(nèi)核分析 (62)
3.2.3 Linux內(nèi)核的配置 (71)
3.2.4 Linux內(nèi)核調(diào)試技術(shù) (76)
3.2.5 開(kāi)發(fā)實(shí)踐:編譯與測(cè)試 (78)
3.2.6 小結(jié) (83)
3.2.7 思考與拓展 (84)
3.3 Linux的文件系統(tǒng)與移植 (84)
3.3.1 Linux文件系統(tǒng) (84)
3.3.2 Linux的根文件系統(tǒng) (86)
3.3.3 使用BusyBox制作根文件系統(tǒng) (88)
3.3.4 Ubuntu嵌入式系統(tǒng)移植 (89)
3.3.5 開(kāi)發(fā)實(shí)踐:Ubuntu根文件系統(tǒng)的制作 (92)
3.3.6 小結(jié) (93)
3.3.7 思考與拓展 (94)
第4章 Linux應(yīng)用開(kāi)發(fā)技術(shù) (95)
4.1 Linux文件與多任務(wù)編程 (95)
4.1.1 Linux文件編程 (95)
4.1.2 Linux進(jìn)程編程 (105)
4.1.3 進(jìn)程間通信技術(shù) (107)
4.1.4 Linux線程編程 (120)
4.1.5 開(kāi)發(fā)實(shí)踐:Linux系統(tǒng)應(yīng)用編程 (127)
4.1.6 小結(jié) (134)
4.1.7 思考與拓展 (135)
4.2 Linux網(wǎng)絡(luò)編程 (135)
4.2.1 網(wǎng)絡(luò)編程基礎(chǔ) (135)
4.2.2 UDP網(wǎng)絡(luò)編程 (139)
4.2.3 TCP網(wǎng)絡(luò)編程 (143)
4.2.4 開(kāi)發(fā)實(shí)踐:Linux網(wǎng)絡(luò)編程 (149)
4.2.5 小結(jié) (159)
4.2.6 思考與拓展 (159)
4.3 Linux數(shù)據(jù)庫(kù)開(kāi)發(fā) (159)
4.3.1 嵌入式數(shù)據(jù)庫(kù) (159)
4.3.2 SQLite3數(shù)據(jù)庫(kù)的操作 (160)
4.3.3 SQLite3數(shù)據(jù)庫(kù)的編程 (163)
4.3.4 開(kāi)發(fā)實(shí)踐:Linux數(shù)據(jù)庫(kù)編程 (168)
4.3.5 小結(jié) (170)
4.3.6 思考與拓展 (170)
4.4 嵌入式Web服務(wù)器應(yīng)用 (170)
4.4.1 嵌入式Web服務(wù)器 (170)
4.4.2 Boa服務(wù)器的移植與測(cè)試 (171)
4.4.3 CGI開(kāi)發(fā)技術(shù) (172)
4.4.4 開(kāi)發(fā)實(shí)踐:嵌入式Web服務(wù)器應(yīng)用 (174)
4.4.5 小結(jié) (178)
4.4.6 思考與拓展 (178)
第5章 Linux驅(qū)動(dòng)程序開(kāi)發(fā)技術(shù) (179)
5.1 Linux驅(qū)動(dòng)程序開(kāi)發(fā)基礎(chǔ) (179)
5.1.1 Linux驅(qū)動(dòng)程序的概念 (179)
5.1.2 Linux驅(qū)動(dòng)程序的開(kāi)發(fā) (184)
5.1.3 GPIO驅(qū)動(dòng)程序的開(kāi)發(fā) (192)
5.1.4 總線設(shè)備驅(qū)動(dòng)程序 (196)
5.1.5 基于設(shè)備樹(shù)的驅(qū)動(dòng)程序設(shè)計(jì) (199)
5.1.6 開(kāi)發(fā)實(shí)踐:LED驅(qū)動(dòng)程序的開(kāi)發(fā) (203)
5.1.7 小結(jié) (209)
5.1.8 思考與拓展 (209)
5.2 字符設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (209)
5.2.1 按鍵驅(qū)動(dòng)程序的開(kāi)發(fā) (209)
5.2.2 ADC驅(qū)動(dòng)程序的開(kāi)發(fā) (217)
5.2.3 PWM驅(qū)動(dòng)程序的開(kāi)發(fā) (220)
5.2.4 開(kāi)發(fā)實(shí)踐:按鍵、ADC、PWM驅(qū)動(dòng)程序的開(kāi)發(fā)與測(cè)試 (225)
5.2.5 小結(jié) (242)
5.2.6 思考與拓展 (242)
5.3 總線設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (242)
5.3.1 I2C總線概述 (242)
5.3.2 I2C總線驅(qū)動(dòng)程序的開(kāi)發(fā) (244)
5.3.3 I2C總線驅(qū)動(dòng)程序接口函數(shù) (247)
5.3.4 開(kāi)發(fā)實(shí)踐:I2C總線驅(qū)動(dòng)程序的開(kāi)發(fā) (250)
5.3.5 小結(jié) (259)
5.3.6 思考與拓展 (259)
5.4 塊設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (259)
5.4.1 Linux塊設(shè)備 (260)
5.4.2 Linux塊設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (261)
5.4.3 RamDisk塊設(shè)備驅(qū)動(dòng)程序的分析 (275)
5.4.4 開(kāi)發(fā)實(shí)踐:RamDisk塊設(shè)備驅(qū)動(dòng)程序 (276)
5.4.5 小結(jié) (281)
5.4.6 思考與拓展 (281)
5.5 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (281)
5.5.1 Linux網(wǎng)絡(luò)設(shè)備概述 (281)
5.5.2 網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (282)
5.5.3 虛擬網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā) (292)
5.5.4 開(kāi)發(fā)實(shí)踐:虛擬網(wǎng)絡(luò)設(shè)備驅(qū)動(dòng)程序的開(kāi)發(fā)與測(cè)試 (292)
5.5.5 小結(jié) (296)
5.5.6 思考與拓展 (296)
參考文獻(xiàn) (297)