21世纪高等学校计算机规划教材——精品系列

嵌入式Linux应用开发教程

分享 推荐 0 收藏 9 阅读 7.6K
华清远见嵌入式学院 , 赵苍明 , 穆煜 (编著) 978-7-115-20904-7

关于本书的内容有任何问题,请联系 武恩玉


1.以S3C2410 为基础,讲解基本概念
2.结合丰富代码实例,突出理论重点
3.精心设计实验内容,重视实践应用
¥34.00 ¥28.90 (8.5 折)
立即购买 申请样书
教学资源仅供教师教学使用,转载或另作他用版权方有权追究法律责任。

内容摘要


本书重点介绍嵌入式Linux 应用开发的基本概念和核心理论。全书分为3 大部分,包括嵌入式Linux 开发基础知识、嵌入式Linux C 编程知识和嵌入式Linux 应用开发知识。本书在讲解中给出了翔实的实例, 并在部分章节的后面详细设计并分析了贴近实践的实验内容。

目录

目 录

第 1章 嵌入式系统基础 1
1.1 嵌入式系统概述 1
1.1.1 嵌入式系统的基本概念 1
1.1.2 嵌入式系统的体系结构 2
1.1.3 几种常用的嵌入式操作系统 2
1.1.4 嵌入式系统发展趋势 5
1.2 ARM处理器硬件开发平台 6
1.2.1 嵌入式处理器简介 6
1.2.2 ARM处理器简介 6
1.2.3 S3C2410处理器介绍 10
1.3 嵌入式软件开发流程 13
1.3.1 嵌入式系统开发概述 13
1.3.2 嵌入式软件开发概述 14
1.4 实验内容:使用JTAG烧写NAND Flash 18
小结 21
思考与练习 21

第 2章 嵌入式Linux C语言程序开发工具 22
2.1 嵌入式Linux下C语言概述 22
2.2 编辑器vim 23
2.2.1 vim的基本模式 23
2.2.2 vim的基本操作 24
2.3 编译器gcc 26
2.3.1 gcc的简介 26
2.3.2 gcc的编译流程 27
2.3.3 gcc的常用编译选项 29
2.4 调试器GDB 34
2.4.1 gdb使用流程 34
2.4.2 gdb基本命令 37
2.4.3 gdbserver远程调试 40
2.5 make工程管理器 42
2.5.1 makefile基本结构 43
2.5.2 makefile变量 43
2.5.3 makefile规则 46
2.5.4 make管理器的使用 47
2.6 autotools 47
2.6.1 autotools使用流程 47
2.6.2 使用autotools所生成的makefile 50
2.7 实验内容 51
2.7.1 vim使用练习 51
2.7.2 用gdb调试程序的bug 52
2.7.3 编写包含多文件的makefile 53
2.7.4 使用autotools生成包含多文件的makefile 53
小结 54
思考与练习 54

第3章 嵌入式Linux C语言基础 55
3.1 预处理 55
3.1.1 预定义 55
3.1.2 文件包含 60
3.1.3 条件编译 61
3.2 C语言中的内存分配 62
3.2.1 C语言程序所占内存分类 63
3.2.2 堆和栈的区别 63
3.3 程序的可移植性考虑 64
3.3.1 字长和数据类型 64
3.3.2 数据对齐 65
3.3.3 字节顺序 65
3.4 C和汇编的接口 66
3.4.1 内嵌汇编的语法 66
3.4.2 编译器优化介绍 69
3.4.3 C语言关键字volatile 69
3.4.4 memory描述符 69
3.5 ARM Linux内核常见数据结构 70
3.5.1 链表 70
3.5.2 树、二叉树、平衡树 75
3.5.3 哈希表 82
小结 87
思考与练习 87

第4章 嵌入式Linux开发环境的搭建 88
4.1 构建嵌入式Linux开发环境 88
4.1.1 嵌入式交叉编译环境搭建 89
4.1.2 主机交叉开发环境配置 90
4.2 Bootloader 94
4.2.1 Bootloader的种类 94
4.2.2 U-Boot编译与使用 95
4.2.3 U-Boot移植 102
4.3 Linux内核与移植 103
4.3.1 Linux内核结构 104
4.3.2 Linux内核配置与编译 105
4.3.3 Linux内核移植 108
4.4 嵌入式文件系统构建 112
小结 115
思考与练习 116

第5章 嵌入式Linux文件I/O编程 117
5.1 Linux系统调用及用户编程接口 117
5.1.1 系统调用 117
5.1.2 用户编程接口 118
5.1.3 系统命令 118
5.2 Linux文件I/O系统概述 118
5.2.1 虚拟文件系统 118
5.2.2 通用文件模型 119
5.2.3 Linux中文件及文件描述符 121
5.3 底层文件I/O操作 121
5.3.1 基本文件操作 121
5.3.2 文件锁 124
5.3.3 多路复用 126
5.4 嵌入式Linux串口应用编程 131
5.4.1 串口概述 131
5.4.2 串口设置详解 132
5.4.3 串口使用详解 140
5.5 标准I/O编程 143
5.5.1 基本操作 143
5.5.2 其他操作 146
5.6 实验内容 148
5.6.1 文件读写及上锁 148
5.6.2 多路复用式串口操作 153
小结 156
思考与练习 156

第6章 嵌入式Linux多任务编程 157
6.1 Linux下多任务概述 157
6.1.1 任务 157
6.1.2 进程 157
6.1.3 线程 162
6.2 进程控制编程 163
6.2.1 进程编程基础 163
6.2.2 Linux守护进程 167
6.3 进程间通信 171
6.3.1 Linux下进程间通信概述 171
6.3.2 管道通信 172
6.3.3 信号通信 177
6.3.4 信号量 183
6.3.5 共享内存 187
6.3.6 消息队列 188
6.4 多线程编程 193
6.4.1 线程基本编程 193
6.4.2 线程之间的同步与互斥 196
6.4.3 线程属性 198
6.5 实验内容 200
6.5.1 编写多进程程序 200
6.5.2 编写守护进程 204
6.5.3 有名管道通信实验 205
6.5.4 共享内存实验 209
6.5.5 多线程实验 212
小结 216
思考与练习 217

第7章 嵌入式Linux网络编程 218
7.1 TCP/IP概述 218
7.1.1 TCP/IP的分层模型 218
7.1.2 TCP/IP分层模型特点 219
7.1.3 TCP/IP核心协议 220
7.2 网络编程基本知识 222
7.2.1 套接字概述 222
7.2.2 地址及顺序处理 223
7.2.3 套接字编程 228
7.2.4 编程实例 231
7.3 网络编程 234
7.4 Web服务器 240
7.4.1 Web服务器的工作原理 240
7.4.2 Web服务器的编程实现 242
7.4.3 运行Web服务器 246
7.5 实验内容:NTP的客户端实现 247
小结 252
思考与练习 252

第8章 嵌入式Linux设备驱动编程 253
8.1 设备驱动编程基础 253
8.1.1 Linux设备驱动概述 253
8.1.2 Linux内核模块编程 254
8.2 字符设备驱动编程 263
8.2.1 字符设备驱动编写流程 263
8.2.2 重要数据结构 263
8.2.3 设备驱动程序主要组成 264
8.3 GPIO驱动程序实例 270
8.3.1 GPIO工作原理 270
8.3.2 GPIO驱动程序 272
8.4 按键驱动程序实例 277
8.4.1 中断编程 277
8.4.2 按键工作原理 278
8.4.3 按键驱动程序 279
8.4.4 按键驱动的测试程序 285
小结 287
思考与练习 287

第9章 Qt图形编程 288
9.1 嵌入式GUI简介 288
9.1.1 Qt/Embedded 289
9.1.2 MiniGUI 289
9.1.3 Microwindows、Tiny X等 289
9.2 Qt/Embedded开发入门 290
9.2.1 Qt/Embedded介绍 290
9.2.2 Qt/Embedded信号和插槽机制 292
9.2.3 搭建Qt/Embedded开发环境 295
9.2.4 Qt/Embedded窗口部件 298
9.2.5 Qt/Embedded图形界面编程 300
9.2.6 Qt/Embedded对话框设计 302
9.3 实验内容:使用Qt编写“Hello,World”程序 306
小结 309
思考与练习 310

第 10章 综合实例--视频监控系统 311
10.1 视频监控系统概述 311
10.1.1 系统组成 311
10.1.2 音视频服务器 312
10.1.3 音视频客户端 312
10.1.4 通信传输控制协议 313
10.2 基本数据结构 315
10.3 功能实现 317
10.3.1 传输控制 317
10.3.2 用户检验 321
10.3.3 控制命令处理 322
10.3.4 云台转动控制 324
10.3.5 线程相关 327
小结 328
思考与练习 328

参考文献 329

读者评论

赶紧抢沙发哦!

我要评论

同系列书

  • 计算机图形学实用教程(第3版)

    苏小红 李东 唐好选 赵玲玲

    全书由12 章组成,内容主要包括绪论、交互式计算机图形处理系统、基本图形生成算法、自由曲线和曲面、图形变换...

    ¥49.00
  • 软件工程——理论与实践

    吕云翔 王昕鹏 邱玉龙

      本书从结构化方法和面向对象方法两方面介绍软件工程的基本概念、原理和方法,并用一个案例贯穿每一章的实践部分,...

    ¥36.00
  • 算法设计

    郑宇军 石海鹤 陈胜勇

      本书以设计策略为主线,循序渐进地介绍了经典算法设计(包括分治、动态规划、贪心、回溯、迭代改进等算法)、NP...

    ¥32.00
  • SQL Server 数据库教程(2008版)

    郑阿奇 刘启芬 顾韵华

      本书介绍SQL Server 2008数据库管理系统,主要内容包含3个部分:第一部分是数据库基础部分;第二...

    ¥42.00
  • 数据库原理及应用(第2版)

    何玉洁 刘福刚 于绍娜 余阳 张荣梅

      本书由11章、2个附录组成,主要内容包括关系数据库基础、SQL语言、关系数据理论、数据库设计、事务与并发控...

    ¥35.00

相关图书

  • 汇编语言程序设计(第3版)(微课版)

    刘慧婷

    本书系统地讲解了汇编语言程序设计的相关知识,全书共有11章,系统地论述了汇编语言基础知识,计算机基本原理,上机...

    ¥69.80
  • 新型传感技术与应用

    李成

    本书结合国际上传感技术及应用方面的发展趋势,梳理了新型传感技术的共性基础问题,包括传感器特性、传感器测量不确定...

    ¥59.80
  • 数字电路与逻辑设计(微课版)

    于俊清

    本书内容结合微电子产业和计算机硬件产业的最新发展现状和技术前沿,注重基础性、高阶性、创新性和挑战性相结合,采用...

    ¥69.80
  • 单片机原理及应用技术(基于Keil C与Proteus)

    赵全利

    本书全面、详细地讲授51系列及兼容单片机的体系结构、工作原理、功能部件和软硬件应用开发资源。在51单片机硬件编...

    ¥79.80
  • 微型计算机原理及应用

    赵全利

    本书概述了计算机基础知识及微型计算机系统组成,以8086 CPU为基础,详细介绍80x86微处理器的硬件结构、...

    ¥79.80
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部