分  享 
分  享 
源  码 
源  码 
课  程 
课  程 
设  计 
设  计 

[语言编程] 【PDF教材】《Linux 高级程序设计》(第三版)PDF超清 [32.8 MB]

[复制链接]
密探007邮箱认证 OneDrive 认证 微信绑定 发表于 2020-1-9 16:03:10 | 显示全部楼层 |阅读模式

欢迎加入「奥学网」学霸平台,让自学改变你的世界!

您需要 登录 才可以下载或查看,没有帐号?账号注册

x


【PDF教材】《Linux 高级程序设计》(第三版)PDF超清 [32.8 MB] - 奥学网

  全方位详细介绍Linux程序编写实战演练的书藉

  创作者小结很多年课堂教学及工程项目实践活动

  融合Linux编程设计知识结构图

  包含了Linux电脑操作系统下C运用程序编写全部內容

  每1个知识结构图都用1个手机应用程序开展详细介绍

  《Linux高級编程设计(第3版)》紧紧围绕Linux电脑操作系统“一切文档”的特性,叙述了Linux电脑操作系统下网络层“每段实行模块(系统进程)对资源(CPU資源、各种文档資源)的管理方法”。详解了Linux系统软件程序编写自然环境及程序编写小工具(GCC/Makefile/GDB)、文档管理(文件属性操纵、ANSI及其POSIX规范下文档读写操作、终端设备程序编写)、进程管理(建立、撤出、实行、等候、特性操纵)、进程间通信(管路、消息队列、共享内存)、系统进程间同歩体制(信号量)、系统进程间异步体制(数据信号)、进程管理方法(建立、撤出、撤销等及其特性操纵)、进程间同歩(互斥锁、读写能力锁、标准自变量)、进程与数据信号及其BSDsocket程序编写中的TCP、UDP、初始套插口、服务器应用程序开发等內容,并对Linux系统软件下的声频应用开发干了解读。

  《Linux高級编程设计(第3版)》主题鲜明、围绕运用,合适从业Linux下C运用程序编写的工作人员阅读文章,也合适从业内嵌式Linux开发设计的工作人员阅读文章。

  目录

  第1章 Linux下C语言开发环境

  1.1 Linux操作系统简介

  1.1.1 Linux操作系统简介

  1.1.2 GNU/Linux简介

  1.1.3 相关术语介绍

  1.2 Linux开发初步

  1.2.1 Linux下C程序标准

  1.2.2 库函数和系统调用

  1.2.3 在线文档介绍

  1.2.4 获取错误信息

  1.3 部分常用工具简介

  1.3.1 tar打包器

  1.3.2 Linux常用命令及工具

  1.4 Linux下编码风格

  1.4.1 GNU编码规范

  1.4.2 Linux内核编码规范

  第2章 Linux下C语言开发工具

  2.1 常用编辑工具

  2.1.1 VIM编辑器

  2.1.2 Emacs编辑器

  2.1.3 Source Insight工具

  2.2 GCC/GDB编译调试工具基础

  2.2.1 GCC/G++简单介绍

  2.2.2 GDB调试工具简介

  2.2.3 使用GCC编译C程序示例

  2.2.4 使用g++编译C++程序示例

  2.2.5 GDB演示示例

  第3章 Linux进程存储管理

  3.1 Linux程序存储结构与进程结构

  3.1.1 Linux可执行文件结构

  3.1.2 Linux进程结构

  3.1.3 C变量及函数存储类型

  3.1.4 栈和堆的区别

  3.1.5 示例:查看代码中各数据存储位置

  3.1.6 常见内存错误示例分析

  3.2 ANSI C动态内存管理

  3.2.1 内存分配的基本方式

  3.2.2 示例:为程序申请动态内存空间

  3.2.3 内存数据管理函数

  3.3 Valgrind及valkyrie内存管理工具

  3.3.1 Valgrind介绍

  3.3.2 Valgrind安装与使用

  3.3.3 valgrind图形化工具Valkyrie

  3.3.4 内存检测示例

  3.4 Linux进程环境及系统限制

  3.4.1 进程与命令行选项及参数

  3.4.2 进程与环境变量

  3.4.3 Linux系统限制

  3.4.4 Linux时间管理

  第4章 ANSI C文件IO管理

  4.1 文件及文件流

  4.1.1 文件与流的基本概念

  4.1.2 标准流及流主要功能

  4.1.3 文件流指针

  4.1.4 缓冲区类型

  4.1.5 指定流缓冲区

  4.2 ANSI C文件I/O操作

  4.2.1 打开关闭文件

  4.2.2 读/写文件流

  4.2.3 文件流定位

  4.2.4 实现文件复制操作示例

  4.3 流的格式化输入/输出操作

  4.3.1 printf/scanf函数分析

  4.3.2 fprintf/fscanf函数分析

  4.3.3 sprintf函数分析

  4.3.4 sscanf函数分析

  第5章 POSIX文件及目录管理

  5.1 文件描述符与内核文件表项

  5.1.1 文件流与文件描述符的区别

  5.1.2 文件表结构图

  5.1.3 文件描述符与文件流的转换操作

  5.2 POSIX标准下文件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.1 Linux文件系统管理

  6.1.1 Linux下VFS虚拟文件系统

  6.1.2 ext2文件系统结构

  6.1.3 目录文件及常规文件存储方法

  6.2 Linux系统下文件类型及属性

  6.2.1 Linux文件类型及权限

  6.2.2 Linux文件类型

  6.2.3 文件权限修饰位

  6.2.4 文件访问权限位

  6.3 Linux文件属性管理

  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.2 c_cflag终端控制选项

  7.2.3 c_lflag终端本地选项

  7.2.4 c_iflag终端输入选项

  7.2.5 c_oflag终端输出选项

  7.2.6 c_cc[NCCS]终端控制字符

  7.2.7 IOCTLs控制终端

  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.3 Linux特殊进程

  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.1 Linux常见信号与处理

  10.1.1 信号与中断

  10.1.2 信号基本概念

  10.1.3 信号的生命周期

  10.1.4 发送信号

  10.2 安装信号与捕获信号

  10.2.1 信号处理办法

  10.2.2 signal安装信号

  10.2.3 sigaction安装信号

  10.2.4 signal的系统漏洞

  10.3 安装信号与捕获信号

  10.3.1 设置进程屏蔽信号集

  10.3.2 获取当前未决的信号

  10.3.3 信号集合操作

  10.3.4 信号集合操作应用示例

  10.4 等待信号

  10.4.1 pause函数

  10.4.2 sigsuspend函数

  10.5 信号应用实例

  第11章 System V进程间通信

  11.1 System V IPC基础

  11.1.1 key值和ID值

  11.1.2 拥有者及权限

  11.2 消息队列

  11.2.1 消息队列IPC原理

  11.2.2 Linux消息队列管理

  11.2.3 消息队列应用实例

  11.3 信号量通信机制

  11.3.1 信号量IPC原理

  11.3.2 Linux信号量管理操作

  11.3.3 SEM_UNDO参数的应用

  11.3.4 使用信号量实现生产消费问题

  11.4 共享内存

  11.4.1 共享内存IPC原理

  11.4.2 Linux共享内存管理

  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.1 TCP/IP协议簇基础

  13.1.2 IPv4协议基础

  13.1.3 点分十进制IP地址与二进制IP地址转换

  13.1.4 网络数据包封包与拆包过程

  13.1.5 字节顺序与大小端问题

  13.2 BSD Socket网络通信编程

  13.2.1 BSD TCP通信编程流程

  13.2.2 BSD Socket网络编程API

  13.3 使用TCP实现简单聊天程序

  13.3.1 服务器端代码分析

  13.3.2 客户器端代码分析

  13.4 网络调试工具

  13.4.1 tcpdump的使用

  13.4.2 netstat工具使用

  13.4.3 lsof工具使用

  第14章 TCP高级应用

  14.1 文件I/O方式比较

  14.2 I/O阻塞与非阻塞操作

  14.2.1 阻塞与非阻塞基本概念

  14.2.2 非阻塞应用示例

  14.3 socket多路复用应用

  14.3.1 select()与pselect函数介绍

  14.3.2 poll与ppoll函数

  14.3.3 多路复用应用示例

  14.4 控制socket文件描述符属性

  14.4.1 set/getsockopt()修改socket属性

  14.4.2 fcntl控制socket

  14.4.3 ioctl控制文件描述符

  第15章 UDP网络编程应用

  15.1 UDP网络编程基础

  15.1.1 UDP网络通信流程

  15.1.2 使用AF_INET实现UDP点对点通信示例

  15.2 UDP广播通信

  15.2.1 广播地址与广播通信

  15.2.2 UDP广播通信示例

  15.3 UDP组播通信

  15.3.1 组播地址与组播通信

  15.3.2 UDP组播应用示例

  15.4 socket信号驱动

  15.4.1 异步信号处理机制流程

  15.4.2 信号驱动方式处理UDP数据

  15.5 域名与IP信息解析

  15.5.1 Linux下域名解析过程

  15.5.2 通过域名返回主机信息

  15.5.3 通过域名和IP返回主机信息

  15.5.4 getaddrinfo获取主机信息

  第16章 网络服务器应用设计

  16.1 迭代服务器设计

  16.1.1 xinetd服务介绍

  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.1 sock实现本地进程间通信

  17.1.1 使用socket实现本地进程通信

  17.1.2 使用AF_UNIX实现本机数据流

  17.2 本地socket传递文件描述符

  17.2.1 sendmsg/recvmsg函数

  17.2.2 传递文件描述符示例

  17.3 原始套应用程序开发

  17.3.1 原始套接口基本原理

  17.3.2 原始套接口实现ping应用程序

  17.3.3 原始套实现DOS攻击

  第18章 音频应用程序开发基础

  18.1 WAV音频文件格式分析

  18.1.1 数字音频基本参数

  18.1.2 WAV音频文件结构

  18.1.3 读出WAV格式文件头信息

  18.4.4 MP3文件格式

  18.2 OSS音频设备编程

  18.2.1 OSS音频设备基本架构

  18.2.2 OSS音频编程应用示例

  18.3 ALSA音频设备编程

  18.3.1 ALSA基本架构

  18.3.2 alsa-libs基本应用

  18.3.3 ALSA音频编程示例



 百度网盘 / Download(回复可见):
 The following hidden content members only. Join us 
游客,如果您要查看本帖隐藏内容请回复

 

 

楼 主 推 荐
0zIF4Q 发表于 2020-1-11 01:06:25 | 显示全部楼层
困了累了就来“奥学网”逛逛,瞬间清醒.
回复 支持 反对

使用道具 举报

wubaiai163 发表于 2020-1-11 02:26:08 | 显示全部楼层
要不我崇拜你?行吗?.
回复 支持 反对

使用道具 举报

jack_zhao微信绑定 OneDrive 认证 邮箱认证 发表于 2020-1-13 14:56:31 | 显示全部楼层
谢谢,楼主,有本电子书当工具书查的也方便
回复 支持 反对

使用道具 举报

Hai07170610 发表于 2020-1-15 22:06:57 | 显示全部楼层
好多资源,喜欢喜欢.
回复 支持 反对

使用道具 举报

Mr.C微信绑定 OneDrive 认证 邮箱认证 发表于 2020-1-16 10:19:42 | 显示全部楼层
学习你们,敬业奉献额好人([email protected][email protected]=)哪里?.
回复 支持 反对

使用道具 举报

totenkopf 发表于 2020-1-16 22:33:45 | 显示全部楼层
谢谢,楼主,有本电子书当工具书查的也方便
回复 支持 反对

使用道具 举报

hengfeb 发表于 2020-1-16 23:12:50 | 显示全部楼层
謝謝分享,很喜歡這本好書。
回复 支持 反对

使用道具 举报

PlHNm 发表于 2020-1-17 08:14:35 | 显示全部楼层
我靠,界面越来越好看了.
回复 支持 反对

使用道具 举报

快速回复 收藏帖子 返回列表
加密...

Try it|SiteMap|奥学网

E-mail: [email protected]

Xtreme-aesthetic Design

© 2012~Now 6SO.SO

快速回复 返回顶部 返回列表