两卷本的《UNIX网络编程》是已故技术作家W. Richard Stevens的传世之作。卷2着重讨论如何让应用程序与在其他机器上的应用程序进行对话。良好的进程间通信(IPC)机制是提高UNIX程序性能的关键。本书全面深入地讲解了各种进程间通信形式,包括消息传递、同步、共享内存及远程调用(RPC)。书中包含了大量经过优化的源代码,帮助读者加深理解。这些源代码可以从本书网站下载。 本书是网络研究和开发人员公认的参考书,无论网络编程的初学者还是网络专家都会大受裨益。
內容簡介:
本书是一部UNIX网络编程的经典之作。进程间通信(IPC)几乎是所有Unix程序性能的关键,理解IPC也是理解如何开发不同主机间网络应用程序的必要条件。本书从对Posix IPC和System V IPC的内部结构开始讨论,全面深入地介绍了4种IPC形式:消息传递(管道、FIFO、消息队列)、同步(互斥锁、条件变量、读写锁、文件与记录锁、信号量)、共享内存(匿名共享内存、具名共享内存)及远程过程调用(Solaris 门、Sun RPC)。附录中给出了测量各种 IPC形式性能的方法。本书内容详尽,几乎每章都提供精选的习题,并提供了部分习题的答案,是网络研究和开发人员理想的参考书。
關於作者:
W. Richard Stevens 国际知名的UNIX和网络专家,备受赞誉的技术作家。他1951年2月5日出生于赞比亚,后随父母回到美国。中学时就读于弗吉尼亚菲什伯恩军事学校,1973年获得密歇根大学航空和航天工程学士学位。1975年至1982年,他在亚利桑那州图森市的基特峰国家天文台从事计算机编程工作,业余时间喜爱飞行运动,做过兼职飞行教练。这期间他分别在1978年和1982年获得亚利桑那大学系统工程硕士和博士学位。此后他去康涅狄格州纽黑文的健康系统国际公司任主管计算机服务的副总裁。1990年他回到图森,从事专业技术写作和咨询工作。写下了多种经典的传世之作,包括《TCPIP详解》(三卷)、《UNIX环境高级编程》和《UNIX网络编程》(两卷)。Stevens于1999年9月1日去世,年仅48岁。2000年他被国际机构USENIX追授“终身成就奖”。
目錄:
Part 1Introduction 简介 1
Chapter 1.Introduction 简介3
1.1Introduction 概述3
1.2Processes, Threads, and the Sharing of Information 进程、线程与信息共享5
1.3Persistence of IPC Objects IPC对象的持续性6
1.4Name Spaces 名字空间7
1.5Effect of fork, exec, and exit on IPC Objects fork、exec和exit对IPC对象的影响9
1.6Error Handling: Wrapper Functions 错误处理:包装函数11
1.7Unix Standards Unix标准13
1.8Road Map to IPC Examples in the Text 本书中IPC示例的路线图15
1.9Summary 小结16
Chapter 2.Posix IPC19
2.1Introduction 概述19
2.2IPC Names IPC名字19
2.3Creating and Opening IPC Channels 创建与打开IPC通道22
2.4IPC Permissions IPC权限25
2.5Summary 小结26
Chapter 3.System V IPC27
3.1Introduction 概述27
3.2key_t Keys and ftok Function key_t键和ftok函数28
3.3ipc_perm Structure ipc_perm结构30
3.4Creating and Opening IPC Channels 创建与打开IPC通道30
3.5IPC Permissions IPC权限32
3.6Identifier Reuse 标识符重用34
3.7ipcs and ipcrm Programs ipcs和ipcrm程序36