新書推薦:
《
超越百岁看这本就够了
》
售價:NT$
254.0
《
亚洲戏剧史·南亚卷
》
售價:NT$
653.0
《
中国历代竹器图谱与数字活化
》
售價:NT$
2540.0
《
EDA技术与设计(第2版)
》
售價:NT$
387.0
《
揉碎浪漫(全两册)
》
售價:NT$
320.0
《
古籍善本
》
售價:NT$
2448.0
《
人民币国际化报告2024:可持续全球供应链体系与国际货币金融变革
》
售價:NT$
398.0
《
道德经新注 81幅作者亲绘哲理中国画,图文解读道德经
》
售價:NT$
653.0
|
內容簡介: |
本书以案例的形式,详细介绍嵌入式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)
|
|