打开主菜单

求真百科

嵌入式Linux开发技术

嵌入式Linux开发技术》,廖建尚 著,出版社: 电子工业出版社。

电子工业出版社成立于1982年10月,是工业和信息化部直属的科技与教育出版社,每年出版新书2400余种,音像和电子出版物400余种,期刊8种,出版物内容涵盖了信息科技的各个专业分支以及工业技术、经济管理、大众生活、少儿科普[1]等领域,综合出版能力位居全国出版行业前列[2]

目录

内容简介

本书以案例的形式,详细介绍嵌入式Linux开发技术,由浅入深地分析嵌入式系统、嵌入式Linux开发环境、嵌入式Linux应用开发技术和嵌入式Linux驱动开发技术,边学习理论知识边开发,将理论学习和工程实践结合起来,每个案例均附上完整的开发代码和配套PPT,可以在源代码的基础可以进行快速二次开发。

作者介绍

廖建尚,教授,博士。长期从事模式识别、物联网系统研究。主持广东省自然基金等省级以上项目8项;发表论文20多篇,其中SCI和EI收录10多篇,出版教材著作10多部,授权专利10多项,授权软件著作10多项。

目录

第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)

参考文献

  1. 100部科普经典名著,豆瓣,2018-04-26
  2. 关于我们,电子工业出版社