您好,欢迎光临有路网!
Linux高级程序设计(第三版)
QQ咨询:
有路璐璐:

Linux高级程序设计(第三版)

  • 作者:杨宗德,吕光宏,刘雍
  • 出版社:人民邮电出版社
  • ISBN:9787115292902
  • 出版日期:2012年11月01日
  • 页数:486
  • 定价:¥59.00
  • 分享领佣金
    手机购买
    城市
    店铺名称
    店主联系方式
    店铺售价
    库存
    店铺得分/总交易量
    发布时间
    操作

    新书比价

    网站名称
    书名
    售价
    优惠
    操作

    图书详情

    内容提要
    《Linux**程序设计(第3版)》围绕Linux操作系统“一切都是文件”的特点,讲述了Linux操作系统下应用层“一段执行单元(进程)对系统资源(CPU资源、各类文件资源)的管理”。详细介绍了Linux系统编程环境及编程工具(GCC/Makefile/GDB)、文件管理(文件属性控制、ANSI以及POSIX标准下文件读写操作、终端编程)、进程管理(创建、退出、执行、等待、属性控制)、进程间通信(管道、消息队列、共享内存)、进程间同步机制(信号量)、进程间异步机制(信号)、线程管理(创建、退出、取消等以及属性控制)、线程间同步(互斥锁、读写锁、条件变量)、线程与信号以及BSDsocket编程中的TCP、UDP、原始套接口、网络服务器应用开发等内容,并对Linux系统下的音频应用程序开发做了讲解。
    《Linux**程序设计(第3版)》内容丰富、紧扣应用,适合从事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章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/GDB编译调试工具基础
    2.2.1GCC/G 简单介绍
    2.2.2GDB调试工具简介
    2.2.3使用GCC编译C程序示例
    2.2.4使用g 编译C 程序示例
    2.2.5GDB演示示例

    第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动态内存管理
    3.2.1内存分配的基本方式
    3.2.2示例:为程序申请动态内存空间
    3.2.3内存数据管理函数
    3.3Valgrind及valkyrie内存管理工具
    3.3.1Valgrind介绍
    3.3.2 Valgrind安装与使用
    3.3.3valgrind图形化工具Valkyrie
    3.3.4内存检测示例
    3.4Linux进程环境及系统限制
    3.4.1进程与命令行选项及参数
    3.4.2进程与环境变量
    3.4.3Linux系统限制
    3.4.4Linux时间管理

    第4章ANSI C文件IO管理
    4.1文件及文件流
    4.1.1文件与流的基本概念
    4.1.2标准流及流主要功能
    4.1.3文件流指针
    4.1.4缓冲区类型
    4.1.5指定流缓冲区
    4.2ANSI C文件I/O操作
    4.2.1打开关闭文件
    4.2.2读/写文件流
    4.2.3文件流定位
    4.2.4实现文件复制操作示例
    4.3流的格式化输入/输出操作
    4.3.1printf/scanf函数分析
    4.3.2fprintf/fscanf函数分析
    4.3.3sprintf函数分析
    4.3.4sscanf函数分析

    第5章POSIX文件及目录管理
    5.1文件描述符与内核文件表项
    5.1.1文件流与文件描述符的区别
    5.1.2文件表结构图
    5.1.3文件描述符与文件流的转换操作
    5.2POSIX标准下文件IO管理
    5.2.1创建/打开/关闭文件
    5.2.2文件控制fcntl
    5.2.3读/写文件内容
    5.2.4使用POSIX IO实现大于2G文件复制
    5.2.5文件定位
    5.2.6同步内核缓冲区
    5.2.7映射文件到内存
    5.2.8锁定/解锁文件
    5.3目录流基本操作
    5.3.1打开/关闭目录文件
    5.3.2读/写目录内容
    5.3.3定位目录位置
    5.3.4添加和删除目录
    5.3.5当前工作路径操作
    5.3.6文件流、目录流、文件描述符总结
    5.4应用案例:递归文件目录复制操作
    5.4.1应用需求及流程图
    5.4.2示例代码

    第6章普通文件、连接文件及目录文件属性管理
    6.1Linux文件系统管理
    6.1.1Linux下VFS虚拟文件系统
    6.1.2ext2文件系统结构
    6.1.3目录文件及常规文件存储方法
    6.2Linux系统下文件类型及属性
    6.2.1Linux文件类型及权限
    6.2.2Linux文件类型
    6.2.3文件权限修饰位
    6.2.4文件访问权限位
    6.3Linux文件属性管理
    6.3.1读取文件属性
    6.3.2修改文件权限操作
    6.3.3修改系统umask值
    6.3.4修改文件的拥有者及组
    6.3.5用户名/组名与UID/GID的转换
    6.3.6创建/删除硬连接
    6.3.7符号连接文件特殊操作
    6.3.8文件时间属性修改与时间处理
    6.4示例:ls ?l以排序方式列出目录信息
    6.4.1需求及知识点涵盖
    6.4.2流程及源代码实现
    6.5示例:实现tree系统命令

    第7章终端及串口编程
    7.1终端设备类型
    7.1.1实际的物理串口
    7.1.2控制台终端
    7.1.3虚拟终端
    7.1.4当前终端
    7.2终端属性控制
    7.2.1读取/设置终端属性信息
    7.2.2c_cflag终端控制选项
    7.2.3c_lflag终端本地选项
    7.2.4c_iflag终端输入选项
    7.2.5c_oflag终端输出选项
    7.2.6c_cc[NCCS]终端控制字符
    7.2.7IOCTLs控制终端
    7.2.8进程与终端
    7.3串口编程
    7.3.1串口物理设备
    7.3.2串口终端基本操作
    7.3.3串口编程示例
    7.4控制台终端应用基础
    7.4.1终端属性设置
    7.4.2控制命令基本格式
    7.4.3从控制台终端获取信息不回显

    第8章Linux进程管理与程序开发
    8.1进程环境及进程属性
    8.1.1程序、进程与进程资源
    8.1.2进程状态
    8.1.3进程基本属性
    8.1.4进程用户属性
    8.2进程管理及控制
    8.2.1创建进程
    8.2.2在进程中运行新代码
    8.2.3回收进程用户空间资源
    8.2.4回收内核空间资源
    8.2.5孤儿进程与僵死进程
    8.2.6修改进程用户相关信息
    8.3Linux特殊进程
    8.3.1守候进程及其创建过程
    8.3.2日志信息及其管理
    8.3.3守候进程应用示例

    第9章进程间通信--管道
    9.1进程间通信--PIPE
    9.1.1无名管道概念
    9.1.2无名管道文件操作的特殊性
    9.1.3文件描述符重定向
    9.1.4实现who|sort
    9.1.5流重定向
    9.2进程间通信--FIFO
    9.2.1有名管道概念
    9.2.2有名管道管理及其特殊性
    9.2.3管道基本特点总结

    第10章Linux异步信号处理机制
    10.1Linux常见信号与处理
    10.1.1信号与中断
    10.1.2信号基本概念
    10.1.3信号的生命周期
    10.1.4发送信号
    10.2安装信号与捕获信号
    10.2.1信号处理办法
    10.2.2signal安装信号
    10.2.3sigaction安装信号
    10.2.4signal的系统漏洞
    10.3安装信号与捕获信号
    10.3.1设置进程屏蔽信号集
    10.3.2获取当前未决的信号
    10.3.3信号集合操作
    10.3.4信号集合操作应用示例
    10.4等待信号
    10.4.1pause函数
    10.4.2sigsuspend函数
    10.5信号应用实例

    第11章System V进程间通信
    11.1System V IPC基础
    11.1.1key值和ID值
    11.1.2拥有者及权限
    11.2消息队列
    11.2.1消息队列IPC原理
    11.2.2Linux消息队列管理
    11.2.3消息队列应用实例
    11.3信号量通信机制
    11.3.1信号量IPC原理
    11.3.2Linux信号量管理操作
    11.3.3SEM_UNDO参数的应用
    11.3.4使用信号量实现生产消费问题
    11.4共享内存
    11.4.1共享内存IPC原理
    11.4.2Linux共享内存管理
    11.4.3共享内存的权限管理示例
    11.4.4共享内存处理应用示例

    第12章Linux多线程编程
    12.1线程基本概念与线程操作
    12.1.1线程与进程的对比
    12.1.2创建线程
    12.1.3线程退出与等待
    12.1.4取消线程
    12.1.5线程与私有数据
    12.2线程同步机制
    12.2.1互斥锁通信机制
    12.2.2条件变量通信机制
    12.2.3读写锁通信机制
    12.3多线程异步管理--信号
    12.3.1线程信号管理
    12.3.2线程信号应用实例
    12.4线程属性控制
    12.4.1获取线程ID
    12.4.2初始化线程属性对象
    12.4.3获取/设置线程detachstate属性
    12.4.4获取/设置线程栈相关属性

    第13章Linux Socket网络编程基础
    13.1网络通信基础
    13.1.1TCP/IP协议簇基础
    13.1.2IPv4协议基础
    13.1.3点分十进制IP地址与二进制IP地址转换
    13.1.4网络数据包封包与拆包过程
    13.1.5字节顺序与大小端问题
    13.2BSD Socket网络通信编程
    13.2.1BSD TCP通信编程流程
    13.2.2BSD Socket网络编程API
    13.3使用TCP实现简单聊天程序
    13.3.1服务器端代码分析
    13.3.2客户器端代码分析
    13.4网络调试工具
    13.4.1tcpdump的使用
    13.4.2netstat工具使用
    13.4.3lsof工具使用

    第14章TCP**应用
    14.1文件I/O方式比较
    14.2I/O阻塞与非阻塞操作
    14.2.1阻塞与非阻塞基本概念
    14.2.2非阻塞应用示例
    14.3socket多路复用应用
    14.3.1select()与pselect函数介绍
    14.3.2poll与ppoll函数
    14.3.3多路复用应用示例
    14.4控制socket文件描述符属性
    14.4.1set/getsockopt()修改socket属性
    14.4.2fcntl控制socket
    14.4.3ioctl控制文件描述符

    第15章UDP网络编程应用
    15.1UDP网络编程基础
    15.1.1UDP网络通信流程
    15.1.2使用AF_INET实现UDP点对点通信示例
    15.2UDP广播通信
    15.2.1广播地址与广播通信
    15.2.2UDP广播通信示例
    15.3UDP组播通信
    15.3.1组播地址与组播通信
    15.3.2UDP组播应用示例
    15.4socket信号驱动
    15.4.1异步信号处理机制流程
    15.4.2信号驱动方式处理UDP数据
    15.5域名与IP信息解析
    15.5.1Linux下域名解析过程
    15.5.2通过域名返回主机信息
    15.5.3通过域名和IP返回主机信息
    15.5.4getaddrinfo获取主机信息

    第16章网络服务器应用设计
    16.1迭代服务器设计
    16.1.1xinetd服务介绍
    16.1.2时间服务器应用
    16.2多进程/多线程并发服务器设计
    16.2.1多进程实现多客户端
    16.2.2多线程实现多客户端
    16.2.3基于HTTP的多进程并发文件服务器
    16.3进程池/线程池服务器设计
    16.3.1进程池/线程池服务器模型
    16.3.2线程池文件服务器示例

    第17章本地通信与原始套接口
    17.1sock实现本地进程间通信
    17.1.1使用socket实现本地进程通信
    17.1.2使用AF_UNIX实现本机数据流
    17.2本地socket传递文件描述符
    17.2.1sendmsg/recvmsg函数
    17.2.2传递文件描述符示例
    17.3原始套应用程序开发
    17.3.1原始套接口基本原理
    17.3.2原始套接口实现ping应用程序
    17.3.3原始套实现DOS攻击

    第18章音频应用程序开发基础
    18.1WAV音频文件格式分析
    18.1.1数字音频基本参数
    18.1.2WAV音频文件结构
    18.1.3读出WAV格式文件头信息
    18.4.4MP3文件格式
    18.2OSS音频设备编程
    18.2.1OSS音频设备基本架构
    18.2.2OSS音频编程应用示例
    18.3ALSA音频设备编程
    18.3.1ALSA基本架构
    18.3.2alsa-libs基本应用
    18.3.3ALSA音频编程示例
    编辑推荐语
    全面介绍Linux编程实战的书籍
    作者总结多年教学及工程实践
    整合Linux程序设计知识点
    涵盖了Linux操作系统下C应用编程所有内容
    每一个知识点都用一个应用程序进行介绍

    与描述相符

    100

    北京 天津 河北 山西 内蒙古 辽宁 吉林 黑龙江 上海 江苏 浙江 安徽 福建 江西 山东 河南 湖北 湖南 广东 广西 海南 重庆 四川 贵州 云南 西藏 陕西 甘肃 青海 宁夏 新疆 台湾 香港 澳门 海外