当前位置:首页 > 工业技术
嵌入式Linux C语言开发
嵌入式Linux C语言开发

嵌入式Linux C语言开发PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:曾宏安主编
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2009
  • ISBN:9787115211156
  • 页数:263 页
图书介绍:本书在介绍开发工具和Linux C语言基础、嵌入式linux C语言高级用法、内核常见数据结构的解析与应用、嵌入式linux编程基础、文件I/O操作相关的C语言应用、网络通讯相关的C语言应用等,并设置了嵌入式linux C函数参考附录。
《嵌入式Linux C语言开发》目录

第1章 嵌入式Linux C语言开发工具 1

1.1嵌入式Linux下C语言概述 1

1.1.1 C语言简史 1

1.1.2 C语言特点 2

1.1.3嵌入式Linux C语言编程环境 3

1.2嵌入式Linux编辑器vi的使用 3

1.2.1 vi的基本模式 4

1.2.2 vi的基本操作 4

1.2.3 vi的使用实例分析 7

1.3嵌入式Linux编译器GCC的使用 9

1.3.1 GCC概述 9

1.3.2 GCC编译流程分析 10

1.3.3 GCC警告提示 12

1.3.4 GCC使用库函数 14

1.3.5 GCC代码优化 15

1.4嵌入式Linux调试器GDB的使用 16

1.4.1 GDB使用实例 16

1.4.2设置/删除断点 19

1.4.3数据相关命令 20

1.4.4调试运行环境相关命令 20

1.4.5堆栈相关命令 21

1.5 make工程管理器 21

1.5.1 Makefiile基本结构 22

1.5.2 Makefiile变量 23

1.5.3 Makefiile规则 26

1.5.4 make使用 27

1.6 eclipse集成开发环境 28

1.6.1 eclipse简介 28

1.6.2 eclipse相关术语 28

1.6.3安装eclipse集成开发环境(假设宿主机环境为ubuntu8.10) 30

1.6.4 eclipse的使用 31

小结 41

思考与练习 42

第2章 嵌入式Linux C语言基础 43

2.1 ANSI C与GNU C 43

2.1.1 ANSI C简介 43

2.1.2 GNU C简介 44

2.2基本数据类型 45

2.2.1整型家族 45

2.2.2实型家族 47

2.2.3字符型家族 48

2.2.4枚举家族 49

2.2.5指针家族 50

2.3变量与常量 51

2.3.1变量的定义 51

2.3.2typedef 57

2.3.3常量的定义 58

2.4运算符与表达式 59

2.4.1算术运算符和表达式 59

2.4.2赋值运算符和表达式 61

2.4.3逗号运算符和表达式 63

2.4.4位运算符和表达式 63

2.4.5关系运算符和表达式 65

2.4.6逻辑运算符和表达式 66

2.4.7 sizeof操作符 68

2.4.8条件运算符 69

2.4.9运算符优先级总结 70

2.5程序结构和控制语句 71

2.5.1 C语言程序结构 71

2.5.2 C语言控制语句 72

2.6数组、结构体和指针 78

2.6.1数组 78

2.6.2结构体 83

2.6.3指针 85

2.7函数 98

2.7.1概述 98

2.7.2函数定义和声明 99

2.7.3函数的参数、返回值和调用方法 100

2.8 attribute机制介绍 102

2.9系统调用和应用程序编程接口 108

2.9.1系统调用 108

2.9.2应用程序编程接口(API) 109

2.9.3系统命令 109

小结 110

思考与练习 110

第3章 嵌入式Linux C语言高级用法 111

3.1预处理 111

3.1.1预定义 111

3.1.2文件包含 117

3.1.3条件编译 117

3.2 C语言中的内存分配 119

3.2.1 C语言程序所占内存分类 119

3.2.2堆和栈的区别 120

3.3程序的可移植性考虑 121

3.3.1字长和数据类型 121

3.3.2数据对齐 122

3.3.3字节顺序 122

3.4 C语言和汇编语言的接口 123

3.4.1内联汇编的语法 123

3.4.2编译器优化介绍 126

3.4.3 C语言关键字volatile 126

3.4.4 “memory”描述符 126

小结 127

思考与练习 127

第4章 嵌入式Linux内核常见数据结构 128

4.1链表 128

4.1.1单向链表 129

4.1.2双向链表 132

4.1.3循环链表 133

4.1.4 ARM Linux中链表使用实例 134

4.2树、二叉树、平衡树 136

4.2.1树的定义 136

4.2.2二叉树 137

4.2.3平衡树 143

4.2.4 ARM Linux中红黑树使用实例 145

4.3哈希表 147

4.3.1哈希表的概念及作用 147

4.3.2哈希表的构造方法 148

4.3.3哈希表的处理冲突方法 150

4.3.4 ARM Linux中哈希表使用实例 151

小结 153

思考与练习 153

第5章 嵌入式Linux文件操作 154

5.1嵌入式Linux文件系统概述 154

5.1.1虚拟文件系统(VFS) 154

5.1.2通用文件模型 156

5.1.3 Linux下的设备文件 160

5.2嵌入式Linux下的I/O操作 161

5.2.1不带缓存的文件I/O操作 161

5.2.2标准I/O 171

5.3嵌入式Linux下对文件和目录的操作 176

5.3.1文件类型 176

5.3.2文件访问权限 177

5.3.3获取文件属性 177

5.3.4修改文件访问权限 179

5.3.5创建目录 179

5.3.6创建链接文件 180

5.3.7删除文件 180

5.3.8重命名文件 181

5.4嵌入式Linux串口应用开发 181

5.4.1串口概述 181

5.4.2串口设置详解 182

5.4.3串口使用详解 185

小结 188

思考与练习 189

第6章 嵌入式Linux进程和线程编程 190

6.1 Linux进程概述 190

6.1.1进程描述符及任务结构 190

6.1.2进程的调度 192

6.1.3 Linux中的线程 193

6.2 Linux进程控制相关API 194

6.3嵌入式Linux进程间通信 200

6.3.1管道通信 201

6.3.2信号通信 202

6.3.3共享内存 207

6.3.4消息队列 208

6.4嵌入式Linux线程相关API 210

6.5 Linux守护进程 215

6.5.1守护进程概述 215

6.5.2编写规则 215

6.5.3守护进程实例 217

小结 218

思考与练习 219

第7章 网络通信相关的C语言应用 220

7.1 TCP/IP简介 220

7.1.1 TCP/IP的分层模型 220

7.1.2 TCP/IP分层模型的特点 222

7.1.3 TCP/IP核心协议 223

7.2套接字的基本知识 225

7.2.1套接字(socket)概述 225

7.2.2地址及顺序处理 225

7.3套接字相关的API及应用 230

7.3.1 socket函数 230

7.3.2 bind函数 230

7.3.3 connect函数 232

7.3.4 listen函数 233

7.3.5 accept函数 233

7.3.6 send、 recv函数 234

7.3.7 sendto、 recvfrom函数 235

7.3.8 close、 shutdown函数 236

7.3.9 setsockopt、 getsockopt函数 237

7.3.10 getpeername函数 237

7.3.11 gethostname函数 238

7.3.12编程实例 238

7.4套接字高级编程 241

小结 245

思考与练习 245

附录 嵌入式Linux C函数快速参考 246

返回顶部