链接:https://pan.baidu.com/s/1oxrtXq622pVTuUcOmSSMjQ?pwd=502k
提取码:502k
本书以案例的形式,详细介绍嵌入式Linux开发技术,由浅入深地分析嵌入式系统、嵌入式Linux开发环境、嵌入式Linux应用开发技术和嵌入式Linux驱动开发技术,边学习理论知识边开发,将理论学习和工程实践结合起来,每个案例均附上完整的开发代码和配套PPT,可以在源代码的基础可以进行快速二次开发。
目 录
第1章 嵌入式系统概述 (1)
1.1 嵌入式系统的定义、特点与组成 (1)
1.1.1 嵌入式系统的定义 (1)
1.1.2 嵌入式系统的特点 (1)
1.1.3 嵌入式系统的组成 (2)
1.2 嵌入式操作系统 (3)
1.3 Linux操作系统 (3)
1.3.1 Linux简介 (3)
1.3.2 Linux的发行版本 (4)
1.4 嵌入式技术的应用 (4)
1.5 开发实践:认知嵌入式系统 (5)
1.5.1 嵌入式系统硬件认知 (5)
1.5.2 嵌入式系统运行测试 (8)
1.6 小结 (9)
1.7 思考与拓展 (9)
第2章 嵌入式Linux开发环境 (11)
2.1 Linux的安装与基本命令 (11)
2.1.1 Linux的安装与配置 (11)
2.1.2 Linux的软件包管理机制 (15)
2.1.3 Linux的Shell与基本命令 (17)
2.1.4 Linux的编辑器 (20)
2.1.5 Shell脚本 (22)
2.1.6 开发实践:Linux的安装与vim编辑器的使用 (28)
2.1.7 小结 (30)
2.1.8 思考与拓展 (30)
2.2 常用的嵌入式开发工具 (30)
2.2.1 嵌入式Linux的开发模式 (30)
2.2.2 远程控制工具 (31)
2.2.3 串口通信工具 (32)
2.2.4 文件传输工具 (33)
2.2.5 源代码管理工具 (34)
2.2.6 开发实践:嵌入式开发工具的使用 (36)
2.2.7 小结 (38)
2.2.8 思考与拓展 (38)
2.3 Linux的编译环境 (38)
2.3.1 Linux程序的开发环境 (38)
2.3.2 Linux编译器的安装与使用 (39)
2.3.3 Linux的动态库与静态库 (41)
2.3.4 Linux调试器的安装与使用 (42)
2.3.5 Makefile文件的编写 (44)
2.3.6 开发实践:Linux的编译环境 (46)
2.3.7 小结 (49)
2.3.8 思考与拓展 (49)
第3章 嵌入式Linux系统的移植 (51)
3.1 BootLoader的移植与应用 (51)
3.1.1 BootLoader简介 (51)
3.1.2 U-Boot的移植 (53)
3.1.3 U-Boot的使用 (55)
3.1.4 开发实践:U-Boot的编译 (58)
3.1.5 小结 (60)
3.1.6 思考与拓展 (60)
3.2 Linux的内核与配置 (60)
3.2.1 Linux的体系结构与内核 (60)
3.2.2 Linux内核分析 (62)
3.2.3 Linux内核的配置 (71)
3.2.4 Linux内核调试技术 (76)
3.2.5 开发实践:编译与测试 (78)
3.2.6 小结 (83)
3.2.7 思考与拓展 (84)
3.3 Linux的文件系统与移植 (84)
3.3.1 Linux文件系统 (84)
3.3.2 Linux的根文件系统 (86)
3.3.3 使用BusyBox制作根文件系统 (88)
3.3.4 Ubuntu嵌入式系统移植 (89)
3.3.5 开发实践:Ubuntu根文件系统的制作 (92)
3.3.6 小结 (93)
3.3.7 思考与拓展 (94)
第4章 Linux应用开发技术 (95)
4.1 Linux文件与多任务编程 (95)
4.1.1 Linux文件编程 (95)
4.1.2 Linux进程编程 (105)
4.1.3 进程间通信技术 (107)
4.1.4 Linux线程编程 (120)
4.1.5 开发实践:Linux系统应用编程 (127)
4.1.6 小结 (134)
4.1.7 思考与拓展 (135)
4.2 Linux网络编程 (135)
4.2.1 网络编程基础 (135)
4.2.2 UDP网络编程 (139)
4.2.3 TCP网络编程 (143)
4.2.4 开发实践:Linux网络编程 (149)
4.2.5 小结 (159)
4.2.6 思考与拓展 (159)
4.3 Linux数据库开发 (159)
4.3.1 嵌入式数据库 (159)
4.3.2 SQLite3数据库的操作 (160)
4.3.3 SQLite3数据库的编程 (163)
4.3.4 开发实践:Linux数据库编程 (168)
4.3.5 小结 (170)
4.3.6 思考与拓展 (170)
4.4 嵌入式Web服务器应用 (170)
4.4.1 嵌入式Web服务器 (170)
4.4.2 Boa服务器的移植与测试 (171)
4.4.3 CGI开发技术 (172)
4.4.4 开发实践:嵌入式Web服务器应用 (174)
4.4.5 小结 (178)
4.4.6 思考与拓展 (178)
第5章 Linux驱动程序开发技术 (179)
5.1 Linux驱动程序开发基础 (179)
5.1.1 Linux驱动程序的概念 (179)
5.1.2 Linux驱动程序的开发 (184)
5.1.3 GPIO驱动程序的开发 (192)
5.1.4 总线设备驱动程序 (196)
5.1.5 基于设备树的驱动程序设计 (199)
5.1.6 开发实践:LED驱动程序的开发 (203)
5.1.7 小结 (209)
5.1.8 思考与拓展 (209)
5.2 字符设备驱动程序的开发 (209)
5.2.1 按键驱动程序的开发 (209)
5.2.2 ADC驱动程序的开发 (217)
5.2.3 PWM驱动程序的开发 (220)
5.2.4 开发实践:按键、ADC、PWM驱动程序的开发与测试 (225)
5.2.5 小结 (242)
5.2.6 思考与拓展 (242)
5.3 总线设备驱动程序的开发 (242)
5.3.1 I2C总线概述 (242)
5.3.2 I2C总线驱动程序的开发 (244)
5.3.3 I2C总线驱动程序接口函数 (247)
5.3.4 开发实践:I2C总线驱动程序的开发 (250)
5.3.5 小结 (259)
5.3.6 思考与拓展 (259)
5.4 块设备驱动程序的开发 (259)
5.4.1 Linux块设备 (260)
5.4.2 Linux块设备驱动程序的开发 (261)
5.4.3 RamDisk块设备驱动程序的分析 (275)
5.4.4 开发实践:RamDisk块设备驱动程序 (276)
5.4.5 小结 (281)
5.4.6 思考与拓展 (281)
5.5 网络设备驱动程序的开发 (281)
5.5.1 Linux网络设备概述 (281)
5.5.2 网络设备驱动程序的开发 (282)
5.5.3 虚拟网络设备驱动程序的开发 (292)
5.5.4 开发实践:虚拟网络设备驱动程序的开发与测试 (292)
5.5.5 小结 (296)
5.5.6 思考与拓展 (296)
参考文献 (297)
「艾尔登法环」梅琳娜手办开订 立体手办▪
万代「艾尔登法环」白狼战鬼手办开订 立体手办▪
「夏目友人帐」猫咪老师粘土人开订 立体手办▪
「五等分的新娘∬」中野三玖·白无垢版手办开订 立体手办▪
「海贼王」乌索普Q版手办开订 立体手办▪
良笑社「初音未来」新手办开订 立体手办▪
「黑岩射手DAWN FALL」死亡主宰手办开订 立体手办▪
「盾之勇者成名录」菲洛手办登场 立体手办▪
「魔法少女小圆」美树沙耶香手办开订 立体手办▪
「咒术回战」七海建人粘土人登场 立体手办▪
「五等分的新娘」中野二乃白无垢手办开订 立体手办▪
「为美好的世界献上祝福!」芸芸粘土人开订 立体手办▪
「公主连结 与你重逢」六星可可萝手办开订 立体手办▪
「女神异闻录5」Joker雨宫莲手办开订 立体手办▪
「间谍过家家」约尔・福杰粘土人登场 立体手办▪
「街角魔族 2丁目」吉田优子手办开订 立体手办▪
「火影忍者 疾风传」旗木卡卡西·暗部版粘土人登场 立体手办▪
「佐佐木与宫野」宫野由美粘土人开订 立体手办▪
「盾之勇者成名录」第2季拉芙塔莉雅手办开订 立体手办▪
「咒术回战」两面宿傩Q版坐姿手办开订 立体手办▪
「DATE·A·BULLET」时崎狂三手办开订 立体手办▪
「狂赌之渊××」早乙女芽亚里粘土人开订 立体手办▪
「魔道祖师」魏无羨粘土人开订 立体手办▪
「新·奥特曼」奥特曼手办现已开订 立体手办▪