kindle电子书

资源下载,尽在我的书库!
首页 > kindle电子书库 > 工业|计算机|互联网 > 电子、计算机、网络

UNIX网络编程 卷2:进程间通信(第2版)(异步图书)

简介:《UNIX网络编程 卷2:进程间通信(第2版)》是一部UNIX 网络编程的经典之作!

电子书详细介绍

 《UNIX网络编程 卷2:进程间通信(第2版)》是一部UNIX 网络编程的经典之作!进程间通信(IPC)几乎是所有Unix 程序性能的关键,理解IPC 也是理解如何开发不同主机间网络应用程序的必要条件。本书从对Posix IPC 和System V IPC 的内部结构开始讨论,全面深入地介绍了4 种IPC 形式:消息传递(管道、FIFO、消息队列)、同步(互斥锁、条件变量、读写锁、文件与记录锁、信号量)、共享内存(匿名共享内存、具名共享内存)及远程过程调用(Solaris门、Sun RPC)。附录中给出了测量各种IPC 形式性能的方法。 
《UNIX网络编程 卷2:进程间通信(第2版)》内容详尽且具权威性,几乎每章都提供精选的习题,并提供了部分习题的答案,是网络研究和开发人员理想的参考书。

编辑推荐

 

两卷本的《UNIX网络编程》是已故著 名技术作家W. Richard Stevens的传世之作。卷2着重讨论如何让应用程序与在其他机器上的应用程序进行对话。 

良好的进程间通信(IPC)机制是提高UNIX程序性能的关键。本书全面深入地讲解了各种进程间通信形式,包括消息传递、同步、共享内存及远程过程调用(RPC)。书中包含了大量经过优化的源代码,帮助读者加深理解。这些源代码可以从本书网站下载。 

本书是网络研究和开发人员公认的权 威参考书,无论网络编程的初学者还是网络专家都会大受裨益。 

作者简介

W. Richard Stevens (1951-1999)是国际知名的Unix和网络专家;受人尊敬的计算机图书作家;同时他还是广受欢迎的教师和顾问。Stevens先生1951年生于赞比亚,他的家庭曾多次搬迁,**终定居于南非。早年,他就读于美国弗吉尼亚州的费什本军事学校,后获得密歇根大学学士、亚利桑那大学系统工程硕士和博士学位。他曾就职于基特峰国家天文台,从事计算机编程;还曾在康涅狄格州纽黑文市的健康系统国际公司任主管计算机服务的副总裁。国际知名的Unix和网络专家,《TCP/IP 详解》(三卷本)、《UNIX网络编程》(两卷本)以及《UNIX环境高 级编程》的作者。

目录

第一部分 简介 
第1章 简介2 
1.1 概述2 
1.2 进程、线程与信息共享3 
1.3 IPC对象的持续性4 
1.4 名字空间5 
1.5 fork、exec和exit对IPC对象的影响7 
1.6 出错处理:包裹函数8 
1.7 Unix标准9 
1.8 书中IPC例子索引表11 
1.9 小结13 
习题13 
第2章 Posix IPC14 
2.1 概述14 
2.2 IPC名字14 
2.3 创建与打开IPC通道16 
2.4 IPC权限18 
2.5 小结19 
习题19 
第3章 System V IPC20 
3.1 概述20 
3.2 key_t键和ftok函数20 
3.3 ipc_perm结构22 
3.4 创建与打开IPC通道22 
3.5 IPC权限24 
3.6 标识符重用25 
3.7 ipcs和ipcrm程序27 
3.8 内核限制27 
3.9 小结28 
习题29 
第二部分 消息传递 
第4章 管道和FIFO32 
4.1 概述32 
4.2 一个简单的客户—服务器例子32 
4.3 管道32 
4.4 全双工管道37 
4.5 popen和pclose函数39 
4.6 FIFO40 
4.7 管道和FIFO的额外属性44 
4.8 单个服务器,多个客户46 
4.9 对比迭代服务器与并发服务器50 
4.10 字节流与消息51 
4.11 管道和FIFO限制55 
4.12 小结56 
习题57 
第5章 Posix消息队列58 
5.1 概述58 
5.2 mq_open、mq_close和mq_unlink函数59 
5.3 mq_getattr和mq_setattr函数61 
5.4 mq_send和mq_receive函数64 
5.5 消息队列限制67 
5.6 mq_notify函数68 
5.7 Posix实时信号78 
5.8 使用内存映射I/O实现Posix消息队列85 
5.9 小结101 
习题101 
第6章 System V消息队列103 
6.1 概述103 
6.2 msgget函数104 
6.3 msgsnd函数104 
6.4 msgrcv函数105 
6.5 msgctl函数106 
6.6 简单的程序107 
6.7 客户—服务器例子112 
6.8 复用消息113 
6.9 消息队列上使用select和poll121 
6.10 消息队列限制122 
6.11 小结124 
习题124 
第三部分 同步 
第7章 互斥锁和条件变量126 
7.1 概述126 
7.2 互斥锁:上锁与解锁126 
7.3 生产者—消费者问题127 
7.4 对比上锁与等待131 
7.5 条件变量:等待与信号发送132 
7.6 条件变量:定时等待和广播136 
7.7 互斥锁和条件变量的属性136 
7.8 小结139 
习题139 
第8章 读写锁140 
8.1 概述140 
8.2 获取与释放读写锁140 
8.3 读写锁属性141 
8.4 使用互斥锁和条件变量实现读写锁142 
8.5 线程取消148 
8.6 小结153 
习题153 
第9章 记录上锁154 
9.1 概述154 
9.2 对比记录上锁与文件上锁157 
9.3 Posix fcntl记录上锁158 
9.4 劝告性上锁162 
9.5 强制性上锁164 
9.6 读出者和写入者的优先级166 
9.7 启动一个守护进程的唯 一副本170 
9.8 文件作锁用171 
9.9 NFS上锁173 
9.10 小结173 
习题174 
第10章 Posix信号量175 
10.1 概述175 
10.2 sem_open、sem_close和sem_unlink函数179 
10.3 sem_wait和sem_trywait函数180 
10.4 sem_post和sem_getvalue函数180 
10.5 简单的程序181 
10.6 生产者—消费者问题186 
10.7 文件上锁190 
10.8 sem_init和sem_destroy函数191 
10.9 多个生产者,单个消费者193 
10.10 多个生产者,多个消费者196 
10.11 多个缓冲区199 
10.12 进程间共享信号量205 
10.13 信号量限制206 
10.14 使用FIFO实现信号量206 
10.15 使用内存映射I/O实现信号量210 
10.16 使用System V信号量实现Posix信号量218 
10.17 小结224 
习题225 
第11章 System V 信号量226 
11.1 概述226 
11.2 semget函数227 
11.3 semop函数229 
11.4 semctl函数231 
11.5 简单的程序232 
11.6 文件上锁237 
11.7 信号量限制238 
11.8 小结242 
习题242 
第四部分 共享内存区 
第12章 共享内存区介绍244 
12.1 概述244 
12.2 mmap、munmap和msync函数247 
12.3 在内存映射文件中给计数器持续加1250 
12.44.4BSD匿名内存映射254 
12.5 SVR4/dev/zero内存映射255 
12.6 访问内存映射的对象255 
12.7 小结259 
习题260 
第13章 Posix共享内存区261 
13.1 概述261 
13.2 shm_open和shm_unlink函数261 
13.3 ftruncate和fstat函数262 
13.4 简单的程序263 
13.5 给一个共享的计数器持续加1267 
13.6 向一个服务器发送消息270 
13.7 小结275 
习题275 
第14章 System V共享内存区276 
14.1 概述276 
14.2 shmget函数276 
14.3 shmat函数277 
14.4 shmdt函数277 
14.5 shmctl函数277 
14.6 简单的程序278 
14.7 共享内存区限制281 
14.8 小结282 
习题283 
第五部分 远程过程调用 
第15章 门286 
15.1 概述286 
15.2 door_call函数291 
15.3 door_create函数292 
15.4 door_return函数293 
15.5 door_cred函数294 
15.6 door_info函数294 
15.7 例子295 
15.8 描述符传递306 
15.9 door_sever_create函数310 
15.10 door_bind、door_unbind和door_revoke函数315 
15.11 客户或服务器的过早终止315 
15.12 小结321 
习题322 
第16章 Sun RPC323 
16.1 概述323 
16.2 多线程化330 
16.3 服务器捆绑333 
16.4 认证336 
16.5 超时和重传338 
16.6 调用语义342 
16.7 客户或服务器的过早终止343 
16.8 XDR:外部数据表示345 
16.9 RPC分组格式361 
16.10 小结365 
习题366 
后记368 
附录A 性能测量371 
附录B 线程入门406 
附录C 杂凑的源代码409 
附录D 精选习题解答417 
参考文献433 
索引435

我来说两句

本书评论

共有 0 条评论
图书分类
我的书库手机端
帮助中心
会员登录 ×
新用户注册 ×