编辑推荐
由浅入深,按理沦分析→实际操作→案例分析的顺序组织内容
作者多年教学及工程实践的总结,整合了Linux程序设计的绝大多数知识点,涵盖Linux操作系统下C语言应用程序设计的所有关键内容
内容简介
本书以Linux操作系统(内核为2.6版本)为开发平台、GCC 4.0/GDB 6.3为开发调试环境,详细介绍了Linux系统下编程环境及编程工具、文件管理(文件类型、ANSI以及POSIX标准下文件读写操作)、进程管理(创建、退出、执行、等待、属性控制)、进程间通信(管道、消息队列、共享内存)、进程间同步机制(信号量)、进程间异步机制(信号)、线程管理(创建、退出、取消等以及属性控制)、线程间同步(互斥锁、读写锁、条件变量)以及网络基本编程、高级应用等内容。
本书内容丰富、紧扣应用,适合从事Linux下C应用编程的人员阅读,也适合从事嵌入式Linux开发的人员阅读。
目录
- 第1章Linux下C语言开发环境
- 1.1Linux操作系统简介
- 1.1.1Linux操作系统简介
- 1.1.2GNU/Linux简介
- 1.1.3相关术语介绍
- 1.2Linux开发初步
- 1.2.1Linux下C程序标准
- 1.2.2库函数和系统调用
- 1.2.3在线文档介绍
- 1.2.4获取错误信息
- 1.3部分常用工具简介
- 1.3.1tar打包器
- 1.3.2Linux常用命令及工具
- 1.4Linux下编码风格
- 1.4.1GNU编码规范
- 1.4.2Linux内核编码规范
- 第2章Linux下C语言开发工具
- 2.1常用编辑工具
- 2.1.1VIM编辑器
- 2.1.2Emacs编辑器
- 2.1.3Source Insight工具
- 2.2GCC编译工具
- 2.2.1GCC/G 简介
- 2.2.2头文件及预处理结果分析
- 2.3Make工具与Makefile文件
- 2.3.1Make工具简介
- 2.3.2Makefile常用规则
- 2.4常用调试工具
- 2.4.1GDB调试工具简介
- 2.4.2GDB演示示例
- 2.4.3GDB调试器常用语法
- 2.4.4strace
- 2.4.5GCC程序开发过程实例
- 2.5Linux库文件使用与创建
- 2.5.1Linux系统库文件管理的基本策略
- 2.5.2Linux下静态库的创建与使用
- 2.5.3Linux下共享库创建及使用
- 2.5.4静态库与共享库的区别
- 2.6Autoconf/Automake自动化工具
- 2.6.1Autoconf/Automake工具介绍
- 2.6.2Autoconf/Automake工具使用示例
- 第3章Linux进程存储管理
- 3.1Linux程序存储结构与进程结构
- 3.1.1Linux可执行文件结构
- 3.1.2Linux进程结构
- 3.1.3C变量及函数存储类型
- 3.1.4栈和堆的区别
- 3.1.5示例:查看代码中各数据存储位置
- 3.1.6常见内存错误示例分析
- 3.2ANSI C内存管理API函数
- 3.2.1内存分配的基本方式
- 3.2.2示例:为程序申请动态内存空间
- 3.2.3内存数据管理函数
- 3.3常用Linux内存管理及调试工具
- 3.3.1mcheck函数
- 3.3.2Valgrind内存检测工具
- 3.4Linux进程环境及系统限制
- 3.4.1进程与命令参数
- 3.4.2进程与环境变量
- 3.4.3Linux系统限制
- 3.4.4Linux时间管理
- 第4章ANSI C文件管理
- 第5章POSIX文件及目录管理
- 第6章普通文件、连接文件及目录文件属性管理
- 第7章Linux进程管理与程序开发
- 第8章进程间通信——管道和信号
- 第9章System V进程间通信
- 第10章Linux多线程编程
- 第11章线程间同步机制
- 第12章Linux socket网络编程
- 第13章网络编程工具介绍
- 第14章网络编程高级应用
- 第15章构建网络服务器