UNIX环境高级编程

出版时间:2006年  出版社:人民邮电出版社  作者:W.Richard Stevens,Stephen A.Rago  页数:758  译者:尤晋元,张亚英,戚正伟  
Tag标签:无  

前言

Advance Programming in the UNIX Environment 问世于1992年,作者是UNIX和网络技术领域的国际知名专家W. Richard Stevens。该书出版以来受到读者的普遍欢迎和好评,认为它是“在UNIX环境下进行程序设计的有关人员必读且经常需要查阅的首选参考书”。UNIX的原创者ennis Ritchie则称其是“公认的优秀、匠心独具的名著”。自第1版以来,UNIX系统及相关产业已经发生了很多变化,特别是UNIX相关标准的制定取得很大进展,UNIX系统采用的某些新技术已日趋成熟,典型的UNIX系统平台也有所改变,而Linux的兴起、快速发展和广泛应用更为世人瞩目。这些都使得该书有修订的必要,以反映这些变化。

内容概要

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

作者简介

W.Richard Stevens,备受赞誉的技术作家,生前著有多种经典的传世之作,包括《UNIX网络编程》(两卷本)、《TCP/IP详解》(三卷本)和本书第1版。
尤晋元,上海交通大学计算机科学及工程系教授、博士生导师。在科研方面,主要从事操作系统和分布对象计算技术方面的研究

书籍目录

第1章 UNIX基础知识 11.1 引言 11.2 UNIX体系结构 11.3 登录 11.4 文件和目录 31.5 输入和输出 61.6 程序和进程 81.7 出错处理 101.8 用户标识 121.9 信号 141.10 时间值 151.11 系统调用和库函数 161.12 小结 17习题 18第2章 UNIX标准化及实现 192.1 引言 192.2 UNIX标准化 192.2.1 ISO C 192.2.2 IEEE POSIX 202.2.3 Single UNIX Specification 252.2.4 FIPS 262.3 UNIX系统实现 262.3.1 SVR4 262.3.2 4.4BSD 272.3.3 FreeBSD 272.3.4 Linux 272.3.5 Mac OS X 282.3.6 Solaris 282.3.7 其他UNIX系统 282.4 标准和实现的关系 282.5 限制 292.5.1 ISO C限制 292.5.2 POSIX限制 302.5.3 XSI限制 322.5.4 sysconf、pathconf和fpathconf函数 322.5.5 不确定的运行时限制 382.6 选项 422.7 功能测试宏 442.8 基本系统数据类型 452.9 标准之间的冲突 452.10 小结 46习题 46第3章 文件I/O 473.1 引言 473.2 文件描述符 473.3 open函数 483.4 creat函数 493.5 close函数 503.6 lseek函数 503.7 read函数 533.8 write函数 543.9 I/O的效率 543.10 文件共享 563.11 原子操作 593.12 dup和dup2函数 603.13 sync、fsync和fdatasync函数 613.14 fcntl函数 623.15 ioctl函数 663.16 /dev/fd 673.17 小结 68习题 68第4章 文件和目录 714.1 引言 714.2 stat、fstat和lstat函数 714.3 文件类型 724.4 设置用户ID和设置组ID 744.5 文件访问权限 754.6 新文件和目录的所有权 774.7 access函数 774.8 umask函数 794.9 chmod和fchmod函数 814.10 粘住位 834.11 chown、fchown和lchown函数 844.12 文件长度 854.13 文件截短 864.14 文件系统 864.15 link、unlink、remove和rename函数 894.16 符号链接 914.17 symlink和readlink函数 944.18 文件的时间 944.19 utime函数 954.20 mkdir和rmdir函数 974.21 读目录 984.22 chdir、fchdir和getcwd函数 1024.23 设备特殊文件 1044.24 文件访问权限位小结 1064.25 小结 106习题 107第5章 标准I/O库 1095.1 引言 1095.2 流和FILE对象 1095.3 标准输入、标准输出和标准出错 1105.4 缓冲 1105.5 打开流 1125.6 读和写流 1145.7 每次一行I/O 1165.8 标准I/O的效率 1175.9 二进制I/O 1195.10 定位流 1205.11 格式化I/O 1215.12 实现细节 1255.13 临时文件 1275.14 标准I/O的替代软件 1305.15 小结 130习题 130第6章 系统数据文件和信息 1336.1 引言 1336.2 口令文件 1336.3 阴影口令 1366.4 组文件 1376.5 附加组ID 1386.6 实现的区别 1396.7 其他数据文件 1396.8 登录账户记录 1406.9 系统标识 1416.10 时间和日期例程 1426.11 小结 146习题 146第7章 进程环境 1477.1 引言 1477.2 main函数 1477.3 进程终止 1477.4 命令行参数 1517.5 环境表 1527.6 C程序的存储空间布局 1527.7 共享库 1547.8 存储器分配 1547.9 环境变量 1577.10 setjmp和longjmp函数 1597.11 getrlimit和setrlimit函数 1647.12 小结 168习题 168第8章 进程控制 1718.1 引言 1718.2 进程标识符 1718.3 fork函数 1728.4 vfork函数 1768.5 exit函数 1788.6 wait和waitpid函数 1798.7 waitid函数 1838.8 wait3和wait4函数 1848.9 竞争条件 1858.10 exec函数 1888.11 更改用户ID和组ID 1928.12 解释器文件 1968.13 system函数 2008.14 进程会计 2038.15 用户标识 2088.16 进程时间 2088.17 小结 210习题 211第9章 进程关系 2139.1 引言 2139.2 终端登录 2139.3 网络登录 2169.4 进程组 2189.5 会话 2199.6 控制终端 2209.7 tcgetpgrp、tcsetpgrp和tcgetsid函数 2219.8 作业控制 2229.9 shell执行程序 2259.10 孤儿进程组 2289.11 FreeBSD实现 2309.12 小结 231习题 232第10章 信号 23310.1 引言 23310.2 信号概念 23310.3 signal函数 24010.4 不可靠的信号 24210.5 中断的系统调用 24410.6 可重入函数 24610.7 SIGCLD语义 24810.8 可靠信号术语和语义 25010.9 kill和raise函数 25110.10 alarm和pause函数 25210.11 信号集 25610.12 sigprocmask函数 25810.13 sigpending函数 25910.14 sigaction函数 26110.15 sigsetjmp和siglongjmp函数 26610.16 sigsuspend函数 26810.17 abort函数 27410.18 system函数 27610.19 sleep函数 28010.20 作业控制信号 28210.21 其他特征 28410.22 小结 285习题 285第11章 线程 28711.1 引言 28711.2 线程概念 28711.3 线程标识 28811.4 线程的创建 28811.5 线程终止 29111.6 线程同步 29711.7 小结 311习题 311第12章 线程控制 31312.1 引言 31312.2 线程限制 31312.3 线程属性 31412.4 同步属性 31812.5 重入 32412.6 线程私有数据 32812.7 取消选项 33112.8 线程和信号 33312.9 线程和fork 33612.10 线程和I/O 33912.11 小结 340习题 340第13章 守护进程 34113.1 引言 34113.2 守护进程的特征 34113.3 编程规则 34213.4 出错记录 34513.5 单实例守护进程 34813.6 守护进程的惯例 35013.7 客户进程-服务器进程模型 35413.8 小结 354习题 354第14章 高级I/O 35514.1 引言 35514.2 非阻塞I/O 35514.3 记录锁 35714.4 STREAMS 37014.5 I/O多路转接 37914.5.1 select和pselect函数 38114.5.2 poll函数 38414.6 异步I/O 38614.6.1 系统V异步I/O 38614.6.2 BSD异步I/O 38714.7 readv和writev函数 38714.8 readn和writen函数 38914.9 存储映射I/O 39014.10 小结 395习题 396第15章 进程间通信 39715.1 引言 39715.2 管道 39815.3 popen和pclose函数 40315.4 协同进程 40815.5 FIFO 41215.6 XSI IPC 41515.6.1 标识符和键 41515.6.2 权限结构 41615.6.3 结构限制 41715.6.4 优点和缺点 41715.7 消息队列 41815.8 信号量 42215.9 共享存储 42715.10 客户进程-服务器进程属性 43215.11 小结 434习题 434第16章 网络IPC:套接字 43716.1 引言 43716.2 套接字描述符 43716.3 寻址 43916.3.1 字节序 44016.3.2 地址格式 44116.3.3 地址查询 44216.3.4 将套接字与地址绑定 44916.4 建立连接 45016.5 数据传输 45216.6 套接字选项 46416.7 带外数据 46616.8 非阻塞和异步I/O 46716.9 小结 468习题 468第17章 高级进程间通信 46917.1 引言 46917.2 基于STREAMS的管道 46917.2.1 命名的STREAMS管道 47217.2.2 唯一连接 47317.3 UNIX域套接字 47617.3.1 命名UNIX域套接字 47717.3.2 唯一连接 47817.4 传送文件描述符 48217.4.1 经由基于STREAMS的管道传送文件描述符 48417.4.2 经由UNIX域套接字传送文件描述符 48617.5 open服务器版本1 49317.6 open服务器版本2 49817.7 小结 505习题 505第18章 终端I/O 50718.1 引言 50718.2 综述 50718.3 特殊输入字符 51218.4 获得和设置终端属性 51618.5 终端选项标志 51618.6 stty命令 52218.7 波特率函数 52318.8 行控制函数 52418.9 终端标识 52418.10 规范模式 52918.11 非规范模式 53218.12 终端的窗口大小 53718.13 termcap,terminfo和curses 53918.14 小结 540习题 540第19章 伪终端 54119.1 引言 54119.2 概述 54119.3 打开伪终端设备 54419.3.1 基于STREAMS的伪终端 54719.3.2 基于BSD的伪终端 54919.3.3 基于Linux的伪终端 55119.4 pty_fork函数 55319.5 pty程序 55519.6 使用pty程序 55919.7 高级特性 56419.8 小结 565习题 565第20章 数据库函数库 56720.1 引言 56720.2 历史 56720.3 函数库 56820.4 实现概述 56920.5 集中式或非集中式 57220.6 并发 57420.7 构造函数库 57420.8 源代码 57520.9 性能 59820.10 小结 600习题 601第21章 与网络打印机通信 60321.1 引言 60321.2 网络打印协议 60321.3 超文本传输协议 60521.4 打印假脱机技术 60521.5 源代码 60721.6 小结 644习题 645附录A 函数原型 647附录B 其他源代码 677附录C 部分习题答案 685参考书目 709索引 715

编辑推荐

《UNIX环境高级编程(第2版)》内容权威,概念清晰,阐述精辟,对于所有层次UNIX程序员都是一本不可或缺的参考书。

图书封面

图书标签Tags

评论、评分、阅读与下载


    UNIX环境高级编程 PDF格式下载


用户评论 (总计174条)

 
 

  •   好书,本书是被誉为UNIX编程“圣经”的Advanced Programming in the UNIX Environment一书的更新版。在本书第1版出版后的十几年中,UNIX行业已经有了巨大的变化,特别是影响UNIX编程接口的有关标准变化很大。本书在保持了前一版的风格的基础上,根据最新的标准对内容进行了修订和增补,反映了最新的技术发展。书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用示例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。
  •   这本书对于我们所学的专业很有帮助,以当当价的价格买到这本书很划算,省去了很多钱。这本书中除了介绍UNIX文件和目录、标准I/O库、系统数据文件和信息、进程环境、进程控制、进程关系、信号、线程、线程控制、守护进程、各种I/O、进程间通信、网络IPC、伪终端等方面的内容,还在此基础上介绍了多个应用示例,包括如何创建数据库函数库以及如何与网络打印机通信等。此外,还在附录中给出了函数原型和部分习题的答案。是一本很好的教学辅导参考书。。
  •   Unix 程序员的圣经!最新版本
    对Unix和Linux 读者都具有吸引力
    内容权威,概念清晰,阐述精辟
    所有层次UNIX程序员不可或缺的参考书
  •   本书内容权威,概念清晰,阐述精辟,对于所有层次UNIX程序员都是一本不可或缺的参考书。
  •   Stevens的这本书很想就想买了,这确实是本经典之作。Stephen A.Rago加入了一些最新的内容,使得这本著作更适应最新读者。本人是unix编程初学者,感觉很不错。
  •   这次我很满意,买了那么多次书,就这次书没有损坏。
    另外,我要赞扬这本书的内容本身。
    如果你学Unix/Linux却没看过《Unix环境高级编程》这本书,那我觉得太遗憾了!在这本书里,Steven和他在《TCP/IP详解》中表现的“博”而“精”再次打动了我。
    这只能感叹,大神之作,每日必烧香膜拜!!!
  •   这本书不仅适于unix,对于linux程序设计的人员同样适用,关于linux编程方面工作的人员都会使用这本书,虽然本书作者英年早逝,但还是有他的同事帮助其更新本书,本书的第一版是90年代初写的此书,06年更新,非常禁的起考验,本书作者所写的《TCP/IP详解》系列丛书更是深受广大计算机爱好者的欢迎,非常好的一本关于UNIX/LINUX编程的一本书
  •   是本经典书籍,但是很多要配套《UNIX工程师手册》,但《UNIX工程师手册》没有中文版的,作为初学者,感觉《UNIX环境高级编程》中的函数讲的有的复杂,看不太懂,还得借助《Linux C函数库详解》来理解。
  •   网络课老师说想学网络编程的去看一本书就行了《Unix网络编程》还说Richard.Stevens的书写的都好他全都看过了我买了本果然如此...
  •   讲述了unix编程的基础知识,适合linux程序员看,是编程的必备书籍。
  •   RichardSTEVENs很好很强大,对UNIX环境下的编程解说细致入微,精辟独到,是本不错的好书```我强烈推荐对UNIX有兴趣,对OPENSOURCE有向往的人买一本,细细的去啃啃```
  •   书很好,对unix环境下的系统编程覆盖面很全,能当辅导用书;如果要深究某些某一项可以购买些专业的书籍来看,不如网络编程和TCPIP详解编程等,用辞典形容它一点儿不为过。
  •   刚刚在公司开始从事linux方面的程序开发。。。由于也是刚刚起步,虽然之前有接触过C语言编程。但是由windows下转为linux下还是需要一段时间的磨合。在baidu上看到一个高人的帖子。于是按照高人指点买回了这本unix环境高级编程。这本书总体来说很不错的。从入门到研究都是一本不错的工具书。
  •   这本书被称为Unix编程人员圣经,不是徒有虚名的!值得一购!
  •   现在有关unix环境编程的书籍很多,但真正堪称经典且长久不衰的还是这部“unix环境高级编程”,因为它将系统和应用编程的关系讲解的很清楚,学它不仅仅学习编程,还可以学很多其它的东西
  •   Unix环境高级编程这本书是学习linux、Unix必须看的一本书,它涉及到很多基础的知识,要是以后想搞驱动程序的话,这本书是毋庸置疑要好好研读的啊。。。。
  •   UNIX编程的圣经,可以当成一本参考书
  •   是unix编程人员的圣经,值得购买。当当的书印刷质量也好。
  •   正如标题说的那样,UNIX编程必不可少的圣经,多看几遍这本书,看懂看透才有资格当一个黑客
  •   最近需要看这本书,非常经典,建议多看几遍,可以结合Unix网络编程
  •   unix编程方面的圣经,工作中会用到
  •   UNIX编程的圣经
  •   感觉不错,看了两遍,实在是受益匪浅,还有两本 UNIX网络编程也一定要看。
  •   这本书是学Unix系统编程必备的一本书!本书详细的讲解了Unix系统编程的方方面面!我很喜欢这本书!!!值的用心去读!!!
    另外应注意做每章的课后习题!他可以使你百尺竿头更进一步!
  •   unix/linux下开发必备,书中范例丰富,例程讲解详细,既可以当作熟悉unix/linux的API手册,也可以当做学习和深入unix的必备教程,程序员的人手必备书吧
  •   UNIX环境高级编程,内容介绍非常详细,值得一读。
  •   读了一半,整个书对linux/unix编程环境描述很是清楚
  •   类UNIX环境下系统编程的全书。非常全面。
  •   这本书是UNIX/Linux编程的经典,不管是C还是C++,不过字迹有点淡,有翻版嫌疑
  •   这本书对于Unix/Linux编程过程中遇到的问题,基本上都有涉及,而且深入浅出。适合有一定经验的读者阅读。
  •   UNIX编程最权威的参考书吧。
  •   前几天下载了《UNIX环境高级编程》的PDF文档,第一章还没看完就被吸引啦!感觉很不错,值得学习的一本好书!!!
  •   书整体说来还不错,适合有点UNIX/LINUX基础的人看看,一本很不错的编程工具书~
  •   这本是很经典的。不过有个疑问和另一本unix环境高级编程,不知道有什么区别不?
  •   UNIX环境高级编程果然是学习UNIX的一部经典的书籍!
  •   UNIX环境高级编程,十分不错的书,必备
  •   unix编程人员必备的参考书!!
  •   本书从各个方面介绍了该Unix编程的方法,非常经典的一本书,值得推荐。
  •   书不错很厚很详细(市面上的其他书薄些,也浅多了)要学unix下的系统编程必备了现在学习中每天十页关键在坚持
  •   学习unix及linux编程的经典作品,值得拥有
  •   UNIX环境高级编程好书,理论与实践的结合
  •   学习类unix环境编程的经典书籍,适用于提高进阶,工作学习的好帮手。
  •   这本书太经典了,对于学习UNIX编程是一本必备的书。可以当作词典来用
  •   内容很全,可以作为UNIX程序员的参考书。
  •   Unix编程以及Linux系程序设计的圣典
  •   学习unix和linux 编程必备书籍
  •   非常不错的Unix学习书籍,想学Unix和Linux编程的同学应该人手一本。
  •   Unix/Linux下学习编程,不可不看得作品
  •   UNIX环境编程比较好的工具书
  •   深入浅出的介绍了 UNIX下的编程技术
  •   UNIX程序员桌上最常摆放的书籍资料~
    带领我们系统认识UNIX的全貌~
  •   这是一本好书。对UNIX程序设计进行了很好的介绍。这本书应该放在手边,作为程序员的工具书。
  •   unix的编程和win下的有些不同,但总体思想一致,刚开始要记的东西挺多,慢慢用吧~本书其实可以直接看英文版的~
  •   好书,我大概看了一下,书中详细介绍了unix编程的基本知识
  •   OK,这是我看的第二本Unix编程书籍,经典书永远值得细读
  •   这是Unix编程的经典之作,绝对是重量级的书。
    我非常喜欢,从里面学到了很多东西。
  •   更加高级的unix编程学习资料,值得好好收藏和研读。
  •   经典教材,不多说了,如果学Unix编程的话,直接用它就可以了
  •   unix编程经典书籍,质量不错,送货快!
  •   学习unix及类unix编程的经典之作啊.好!
  •   经典的教材,是学习unix编程的好书啊
  •   UNIX编程的经典
  •   unix方面的非常好的编程方面的书籍
  •   果然是好书,不亏是unix编程圣典!书很新,赞个!
  •   很适合初级程序员掌握UNIX基础
  •   感觉这本书是我在当当买的书当中最满意的一本书,书有一层塑料膜包着,看起来非常的正式,至于书的内容,是我之前在图书馆看过的,感觉真的是很经典,所以才决定就自己买一本过来看看……我想对于有志于理解LINUX和UNIX系统的学习者来说,真的是非常有用的,而至于作者本身更加是一个计算机界的,尤其是UNIX系统方面的大师了
  •   UNIX编程必看
  •   大师金典,unix编程必修科目!!
  •   最近正在学习unix编程,刚刚好
  •   强烈推荐 unix编程必备
  •   UNIX编程的大部头书籍
  •   unix编程必备。
  •   绝对的好书,对于UNIX编程绝对的!!
  •   UNIX编程必读,非常推荐~!
  •   虽然中文翻译的晦涩了一点,但是确实一本好书,unix编程值得一看
  •   很适合学习Unix编程,极力推荐
  •   如果想更深入的了解unix编程,强烈推荐一看
  •   很好的一本unix方面介绍的书内容很全面很详细不愧为大作我是学嵌入式的看了这本书之后对linux系统更加了解了建议初学者多看看这本书尽管刚开始觉得毫无头绪回头看第二遍的时候效果就来了呵呵
  •   一本写于92年的书,在世界范围内风行了近20年,可见unix和linux虽然变化天翻地覆,但是对于标准的贯彻是多么的一如既往。
  •   真的像本圣经。。。学习linux&unix必备
  •   推荐给喜欢操作系统,在Unix/Linux下编程的人。
  •   值得好好研究的Unix圣经
  •   作为在UNIX环境下编程的经典,这本书应该放在枕头旁边反复研读!
  •   unix圣经当之无愧。
  •   unix c的圣经,不必多说。
  •   没什么可评论的,Unix入门级别的圣经
  •   UNIX的圣经
  •   这边书适合unix和linux的开发人员阅读
  •   书质量不错,内容翔实。学习unix和linux的一本经典著作。
  •   好书,不仅是应用,一些机理也介绍的很清楚。只是,没有UNIX或者linux基础的话,看起来略微有点吃力。
  •   这本书对于学Linux的和unix的,应该是最经典的。
  •   经典书籍,UNIX操作系统开发必备。
  •   最经典的关于UnixAPI的书籍,最到位的讲解。。。但对于初学UNIX的人来说可能会有一定的难度,所以建议阅读此书之前先要打好有关C语言和UNIX操作系统的基础,然后再阅读此书会有更深的理解。
  •   Unix/Linux 经典书籍,学习开发必读……
  •   作为一本参考unix/linux的参考书籍,我觉得很好,这是一部经典的书籍,虽然经过翻译存在一些错误,但不影响原著的精华所在
  •   很好很喜欢的一本书,就是看的有点慢但是对工作还是很有启发的,建议对unix感兴趣的开发人员都看一下。坚持下来一定会很有帮助的。
  •   因为我在北京 所以一天就送到了
    这本书 不多说了 学Unix/Linux基本必看吧 遇到问题看那么多博客 还不如直接看这本吧 当然 建议在有能力的情况下看看英文版的
  •   非常不错,这本书犹如是UNIX开发者的剑法,讲的很不错,但是如果结合一些LINUX内核一类的"内工"看,效果会更不错
  •   刚收到书,大致看了下,书比较厚,印刷也不错。后面就慢慢的啃了。
    讲解的unix环境的开放的高级知识 很有帮助。
  •   Stevens驾鹤仙去,给UNIX世界留下了一座难以翻越的大山。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7