UNIX 环境高级编程(第2版)(UNIX编程人员的圣经 销售突破5万册) pmlz pdf mobi 地址 cbz 下载 epub 百度云

UNIX 环境高级编程(第2版)(UNIX编程人员的圣经 销售突破5万册)精美图片
》UNIX 环境高级编程(第2版)(UNIX编程人员的圣经 销售突破5万册)电子书籍版权问题 请点击这里查看《

UNIX 环境高级编程(第2版)(UNIX编程人员的圣经 销售突破5万册)书籍详细信息

  • ISBN:9787115147318
  • 作者:暂无作者
  • 出版社:暂无出版社
  • 出版时间:2006-05
  • 页数:758
  • 价格:84.10
  • 纸张:胶版纸
  • 装帧:平装
  • 开本:16开
  • 语言:未知
  • 丛书:暂无丛书
  • TAG:暂无
  • 豆瓣评分:暂无豆瓣评分
  • 豆瓣短评:点击查看
  • 豆瓣讨论:点击查看
  • 豆瓣目录:点击查看
  • 读书笔记:点击查看
  • 原文摘录:点击查看

内容简介:

  本书是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的更新版。在本书第1版出版后的十几年中,UNIX行业已经有了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持了前一版的风格的基础上,根据*的标准对内容进行了修?┖驮霾梗?从沉俗钚碌募际醴⒄埂J橹谐?私樯躑NIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用示例,包括如何创建数据库函

数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。

本书内容权威,概念清晰,阐述精辟,对于所有层次UNIX程序员都是一本不可或缺的参考书。


书籍目录:

目 录

第1章 UNIX基础知识 1

1.1 引言 1

1.2 UNIX体系结构 1

1.3 登录 1

1.4 文件和目录 3

1.5 输入和输出 6

1.6 程序和进程 8

1.7 出错处理 10

1.8 用户标识 12

1.9 信号 14

1.10 时间值 15

1.11 系统调用和库函数 16

1.12 小结 17

习题 18

第2章 UNIX标准化及实现 19

2.1 引言 19

2.2 UNIX标准化 19

2.2.1 ISO C 19

2.2.2 IEEE POSIX 20

2.2.3 Single UNIX Specification 25

2.2.4 FIPS 26

2.3 UNIX系统实现 26

2.3.1 SVR4 26

2.3.2 4.4BSD 27

2.3.3 FreeBSD 27

2.3.4 Linux 27

2.3.5 Mac OS X 28

2.3.6 Solaris 28

2.3.7 其他UNIX系统 28

2.4 标准和实现的关系 28

2.5 限制 29

2.5.1 ISO C限制 29

2.5.2 POSIX限制 30

2.5.3 XSI限制 32

2.5.4 sysconf、pathconf和fpathconf函数 32

2.5.5 不确定的运行时限制 38

2.6 选项 42

2.7 功能测试宏 44

2.8 基本系统数据类型 45

2.9 标准之间的冲突 45

2.10 小结 46

习题 46

第3章 文件I/O 47

3.1 引言 47

3.2 文件描述符 47

3.3 open函数 48

3.4 creat函数 49

3.5 close函数 50

3.6 lseek函数 50

3.7 read函数 53

3.8 write函数 54

3.9 I/O的效率 54

3.10 文件共享 56

3.11 原子操作 59

3.12 dup和dup2函数 60

3.13 sync、fsync和fdatasync函数 61

3.14 fcntl函数 62

3.15 ioctl函数 66

3.16 /dev/fd 67

3.17 小结 68

习题 68

第4章 文件和目录 71

4.1 引言 71

4.2 stat、fstat和lstat函数 71

4.3 文件类型 72

4.4 设置用户ID和设置组ID 74

4.5 文件访问权限 75

4.6 新文件和目录的所有权 77

4.7 access函数 77

4.8 umask函数 79

4.9 chmod和fchmod函数 81

4.10 粘住位 83

4.11 chown、fchown和lchown函数 84

4.12 文件长度 85

4.13 文件截短 86

4.14 文件系统 86

4.15 link、unlink、remove和rename函数 89

4.16 符号链接 91

4.17 symlink和readlink函数 94

4.18 文件的时间 94

4.19 utime函数 95

4.20 mkdir和rmdir函数 97

4.21 读目录 98

4.22 chdir、fchdir和getcwd函数 102

4.23 设备特殊文件 104

4.24 文件访问权限位小结 106

4.25 小结 106

习题 107

第5章 标准I/O库 109

5.1 引言 109

5.2 流和FILE对象 109

5.3 标准输入、标准输出和标准出错 110

5.4 缓冲 110

5.5 打开流 112

5.6 读和写流 114

5.7 每次一行I/O 116

5.8 标准I/O的效率 117

5.9 二进制I/O 119

5.10 定位流 120

5.11 格式化I/O 121

5.12 实现细节 125

5.13 临时文件 127

5.14 标准I/O的替代软件 130

5.15 小结 130

习题 130

第6章 系统数据文件和信息 133

6.1 引言 133

6.2 口令文件 133

6.3 阴影口令 136

6.4 组文件 137

6.5 附加组ID 138

6.6 实现的区别 139

6.7 其他数据文件 139

6.8 登录账户记录 140

6.9 系统标识 141

6.10 时间和日期例程 142

6.11 小结 146

习题 146

第7章 进程环境 147

7.1 引言 147

7.2 main函数 147

7.3 进程终止 147

7.4 命令行参数 151

7.5 环境表 152

7.6 C程序的存储空间布局 152

7.7 共享库 154

7.8 存储器分配 154

7.9 环境变量 157

7.10 setjmp和longjmp函数 159

7.11 getrlimit和setrlimit函数 164

7.12 小结 168

习题 168

第8章 进程控制 171

8.1 引言 171

8.2 进程标识符 171

8.3 fork函数 172

8.4 vfork函数 176

8.5 exit函数 178

8.6 wait和waitpid函数 179

8.7 waitid函数 183

8.8 wait3和wait4函数 184

8.9 竞争条件 185

8.10 exec函数 188

8.11 更改用户ID和组ID 192

8.12 解释器文件 196

8.13 system函数 200

8.14 进程会计 203

8.15 用户标识 208

8.16 进程时间 208

8.17 小结 210

习题 211

第9章 进程关系 213

9.1 引言 213

9.2 终端登录 213

9.3 网络登录 216

9.4 进程组 218

9.5 会话 219

9.6 控制终端 220

9.7 tcgetpgrp、tcsetpgrp和tcgetsid函数 221

9.8 作业控制 222

9.9 shell执行程序 225

9.10 孤儿进程组 228

9.11 FreeBSD实现 230

9.12 小结 231

习题 232

第10章 信号 233

10.1 引言 233

10.2 信号概念 233

10.3 signal函数 240

10.4 不可靠的信号 242

10.5 中断的系统调用 244

10.6 可重入函数 246

10.7 SIGCLD语义 248

10.8 可靠信号术语和语义 250

10.9 kill和raise函数 251

10.10 alarm和pause函数 252

10.11 信号集 256

10.12 sigprocmask函数 258

10.13 sigpending函数 259

10.14 sigaction函数 261

10.15 sigsetjmp和siglongjmp函数 266

10.16 sigsuspend函数 268

10.17 abort函数 274

10.18 system函数 276

10.19 sleep函数 280

10.20 作业控制信号 282

10.21 其他特征 284

10.22 小结 285

习题 285

第11章 线程 287

11.1 引言 287

11.2 线程概念 287

11.3 线程标识 288

11.4 线程的创建 288

11.5 线程终止 291

11.6 线程同步 297

11.7 小结 311

习题 311

第12章 线程控制 313

12.1 引言 313

12.2 线程限制 313

12.3 线程属性 314

12.4 同步属性 318

12.5 重入 324

12.6 线程私有数据 328

12.7 取消选项 331

12.8 线程和信号 333

12.9 线程和fork 336

12.10 线程和I/O 339

12.11 小结 340

习题 340

第13章 守护进程 341

13.1 引言 341

13.2 守护进程的特征 341

13.3 编程规则 342

13.4 出错记录 345

13.5 单实例守护进程 348

13.6 守护进程的惯例 350

13.7 客户进程-服务器进程模型 354

13.8 小结 354

习题 354

第14章 高级I/O 355

14.1 引言 355

14.2 非阻塞I/O 355

14.3 记录锁 357

14.4 STREAMS 370

14.5 I/O多路转接 379

14.5.1 select和pselect函数 381

14.5.2 poll函数 384

14.6 异步I/O 386

14.6.1 系统V异步I/O 386

14.6.2 BSD异步I/O 387

14.7 readv和writev函数 387

14.8 readn和writen函数 389

14.9 存储映射I/O 390

14.10 小结 395

习题 396

第15章 进程间通信 397

15.1 引言 397

15.2 管道 398

15.3 popen和pclose函数 403

15.4 协同进程 408

15.5 FIFO 412

15.6 XSI IPC 415

15.6.1 标识符和键 415

15.6.2 权限结构 416

15.6.3 结构限制 417

15.6.4 优点和缺点 417

15.7 消息队列 418

15.8 信号量 422

15.9 共享存储 427

15.10 客户进程-服务器进程属性 432

15.11 小结 434

习题 434

第16章 网络IPC:套接字 437

16.1 引言 437

16.2 套接字描述符 437

16.3 寻址 439

16.3.1 字节序 440

16.3.2 地址格式 441

16.3.3 地址查询 442

16.3.4 将套接字与地址绑定 449

16.4 建立连接 450

16.5 数据传输 452

16.6 套接字选项 464

16.7 带外数据 466

16.8 非阻塞和异步I/O 467

16.9 小结 468

习题 468

第17章 高级进程间通信 469

17.1 引言 469

17.2 基于STREAMS的管道 469

17.2.1 命名的STREAMS管道 472

17.2.2 唯一连接 473

17.3 UNIX域套接字 476

17.3.1 命名UNIX域套接字 477

17.3.2 唯一连接 478

17.4 传送文件描述符 482

17.4.1 经由基于STREAMS的管道传送文件描述符 484

17.4.2 经由UNIX域套接字传送文件描述符 486

17.5 open服务器版本1 493

17.6 open服务器版本2 498

17.7 小结 505

习题 505

第18章 终端I/O 507

18.1 引言 507

18.2 综述 507

18.3 特殊输入字符 512

18.4 获得和设置终端属性 516

18.5 终端选项标志 516

18.6 stty命令 522

18.7 波特率函数 523

18.8 行控制函数 524

18.9 终端标识 524

18.10 规范模式 529

18.11 非规范模式 532

18.12 终端的窗口大小 537

18.13 termcap,terminfo和curses 539

18.14 小结 540

习题 540

第19章 伪终端 541

19.1 引言 541

19.2 概述 541

19.3 打开伪终端设备 544

19.3.1 基于STREAMS的伪终端 547

19.3.2 基于BSD的伪终端 549

19.3.3 基于Linux的伪终端 551

19.4 pty_fork函数 553

19.5 pty程序 555

19.6 使用pty程序 559

19.7 高级特性 564

19.8 小结 565

习题 565

第20章 数据库函数库 567

20.1 引言 567

20.2 历史 567

20.3 函数库 568

20.4 实现概述 569

20.5 集中式或非集中式 572

20.6 并发 574

20.7 构造函数库 574

20.8 源代码 575

20.9 性能 598

20.10 小结 600

习题 601

第21章 与网络打印机通信 603

21.1 引言 603

21.2 网络打印协议 603

21.3 超文本传输协议 605

21.4 打印假脱机技术 605

21.5 源代码 607

21.6 小结 644

习题 645

附录A 函数原型 647

附录B 其他源代码 677

附录C 部分习题答案 685

参考书目 709

索引 715


作者介绍:

W. Richard Stevens备受赞誉的已故技术作家,生前著有多种经典的传世之作,包括《UNIX网络编程》(两卷本)、《TCP/IP详解》(三卷本)和本书第1版。

Stephen A. Rago 资深UNIX程序员,是当年贝尔实验室的UNIX系统V版本4的开发人员之一。著有《UNIX系统V网络编程》,并曾担任本书第1版的技术审校。他目前是EMC公司的管理人员,专门从事文件服务器和文件系统方向的研究。


出版社信息:

暂无出版社相关信息,正在全力查找中!


书籍摘录:

暂无相关书籍摘录,正在全力查找中!



原文赏析:

Parent and the child share a file table entry for every open descriptor.


大多数UNIX调试程序都使用core文件以检查进程终止时的状态。


将进程的信号屏蔽字设置为由sigmask指向的值。在捕捉到一个信号或发生了一个会终止该进程的信号之前,该进程被挂起。如果捕捉到一个信号而且从该信号处理程序返回,则sigsuspend返回,并且将该进程的信号屏蔽字设置为调用sigsuspend之前的值。


与应用程序使用文件描述符(fd)访问文件一样,访问套接字也需要使用套接字描述符,其在unix系统中是用文件描述符实现的。

在AF_INET通信域中套接字SOCK_STREAM的默认协议是TCP,SOCK_DGRAM的默认协议是UDP。

不同处理器架构支持不同的字节序,小端(little-endian)freebsd linux on intel pentium,大端(big-endian)mac os on power pc solaris on sun sparc,有些处理器可以配置大端和小端,更加混乱。

TCP/IP 采用大端字节序。对于TCP/IP,地址是使用网络字节序来表示,所以应用程序有时候需要在处理器的字节序和网络字节序之间转换。

uint32_t htonl(uint32_t hostint32);

uint16_t htons(uint16_t hostint16);

uint32_t ntohl(uint32_t netint32);

uint16_t ntohsl(uint16_t netint16);

h 代表host

n 代表network

l 代表 long

s 代表 short


由open返回的文件描述符一定是最小的未用描述符数值。这一点被某些应用程序用来在标准输入,标准输出或标准错误输出上打开新的文件。


其中,atexit的参数是一个函数地址,当调用此函数时无需向它传送任何参数,也不期望它返回一个值。exit以登记这些函数的相反顺序调用它们。同一函数如若登记多次,则也被调用多次。


其它内容:

编辑推荐

本书新版推荐:

UNIX环境高级编程(第3版)(20年来影响无数程序员的经典之作,UNIX编程“圣经”**版本。王者归来!)

Rich Stevens显然不是Dennis Richie, Brian Kernighan那个贝尔实验室圈子的人。他对Unix的深入了解,是自己翻烂手册、钻研系统得到的。这个切入点,和我们多数用户是一样的。所以,我们想知道的东西,也许正是Stevens关心过的。看看他在N个系统上做的代码测试和对不同标准的比较就知道。《UNIX 环境高级编程(第2版)》适合所有对Unix系统的种种感到好奇的人,Unix和Windows不同在于,它是个鼓励你思考的操作系统(换句话说对于想远离计算机的细节的用户可能不那么友好),只要你使用它有些时日,就会有很多问题冒出来:symbolic link和hard link区别究竟何在?daemon process是怎么回事?即便不写系统级的程序,只作为一般的unix用户,《UNIX 环境高级编程(第2版)》里的信息也是弥足珍贵的。大部分人对技术书籍的评价,一向以“解惑”为**标准。《UNIX 环境高级编程(第2版)》做到了。


媒体评论

“总之,作为更新版本,本书不负众望,无愧于经典原作。”

——Dennis Ritchie,图灵奖得主, UNIX操作系统和C语言之父

“对任何一个真正的专业UNIX系统程序员而言,本书都是不可或缺的参考书。Rago更新和扩展了Stevens的经典著作,并保持了原书的风貌。”

——Andrew Josey, POSIX 1003.1标准工作组主席


书籍介绍

本书是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的更新版。在本书第1版出版后的十几年中,UNIX行业已经有了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持了前一版风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用示例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。

本书内容权威,概念清晰,阐述精辟,对于所有层次UNIX程序员都是一本不可或缺的参考书。


书籍真实打分

  • 故事情节:4分

  • 人物塑造:5分

  • 主题深度:9分

  • 文字风格:3分

  • 语言运用:6分

  • 文笔流畅:7分

  • 思想传递:5分

  • 知识深度:4分

  • 知识广度:4分

  • 实用性:5分

  • 章节划分:5分

  • 结构布局:9分

  • 新颖与独特:6分

  • 情感共鸣:8分

  • 引人入胜:8分

  • 现实相关:8分

  • 沉浸感:8分

  • 事实准确性:6分

  • 文化贡献:4分


网站评分

  • 书籍多样性:3分

  • 书籍信息完全性:7分

  • 网站更新速度:3分

  • 使用便利性:6分

  • 书籍清晰度:5分

  • 书籍格式兼容性:6分

  • 是否包含广告:8分

  • 加载速度:5分

  • 安全性:8分

  • 稳定性:6分

  • 搜索功能:5分

  • 下载便捷性:8分


下载点评

  • 超值(136+)
  • 体验差(641+)
  • 方便(186+)
  • 二星好评(389+)
  • 无多页(241+)
  • 无缺页(290+)
  • 好评(82+)
  • 体验满分(120+)
  • 差评少(117+)

下载评价

  • 网友 曹***雯:

    为什么许多书都找不到?

  • 网友 晏***媛:

    够人性化!

  • 网友 林***艳:

    很好,能找到很多平常找不到的书。

  • 网友 訾***晴:

    挺好的,书籍丰富

  • 网友 游***钰:

    用了才知道好用,推荐!太好用了

  • 网友 石***致:

    挺实用的,给个赞!希望越来越好,一直支持。

  • 网友 沈***松:

    挺好的,不错

  • 网友 后***之:

    强烈推荐!无论下载速度还是书籍内容都没话说 真的很良心!

  • 网友 石***烟:

    还可以吧,毕竟也是要成本的,付费应该的,更何况下载速度还挺快的

  • 网友 相***儿:

    你要的这里都能找到哦!!!

  • 网友 隗***杉:

    挺好的,还好看!支持!快下载吧!

  • 网友 家***丝:

    好6666666

  • 网友 苍***如:

    什么格式都有的呀。

  • 网友 师***怡:

    说的好不如用的好,真心很好。越来越完美

  • 网友 薛***玉:

    就是我想要的!!!


随机推荐