欢迎来到天天文库
浏览记录
ID:41032531
大小:422.50 KB
页数:115页
时间:2019-08-14
《UNIX环境高级编程部分》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、计算机科学丛书UNIX环境高级编程1~5章尤晋元译机械工业出版社前言引言本书说明Unix系统的程序设计界面—系统调用界面和标准C提供的很多函数。这些对编写在Unix系统中运行的程序是非常有帮助的。与大多数操作系统一样,Unix对程序运行提供了大量的服务—打开文件、读文件、启动一道新程序、分配存储区以及获得当前时间等。这些被称之为系统调用界面(systemcallinterface)。另外,标准C库提供了大量C程序广泛使用的函数(格式化输入变量的值、比较两个字符串等)。系统调用和库函数系统上由Unix程
2、序员手册中的第2,3部分说明。本书不是这些内容的重复。该手册没有给出实例,也不说明这些界面和函数设计的合理性,而这些则正是本书所要弥补的。Unix标准在八十年代出现的大量Unix版本的基础上,八十年代后期开始制定了几个国际标准,包括:C程序设计语言的ANSI标准、IEEEPOSIX标准族(还在继续制定)、X/open可移植性指南。本书也说明这些标准,但是并不只是说明这些标准本身,而是着重说明它们与广泛受到重视的一些实现之间的关系,这些实现主要是系统V版本4,以及将发布的4.4BSD。这样也就提供了一种
3、对现实世界的说明,而这正是标准本身及描述符的文献所缺少的。本书的组织 本书分成6个部分:1.对Unix程序设计概念和术语的概要描述(第一章),以及对各种Unix标准化工作和Unix实现的讨论(第二章)。2.不带缓存的I/O(第三章)、文件和目录(第四章、标准I/O库(第五章)以及系统数据文件(第六章)。3.进程—Unix进程的环境(第七章)、进程控制(第八章)、进程之间的关系(第九章)以及信号(第十章)。4.终端I/O(第十一章)、高级I/O(第十二章)以及精灵进程(第十三章)5.IPC——进程间通
4、信(第十四、十五章)。6.实例—一个数据库的函数库(第十六章)、与Postscrip打印机的通信(第十七章)、调制解调器拨号程序(第十八章)以及使用伪终端(第十九章)。如果对C语言较熟悉并具有某些应用Unix的经验,那么对阅读本书是非常有益的,但是并不要求读者具有Unix的程序设计经验。本书面向的主要读者是:熟悉Unix的程序员,熟悉某个其它操作系统的程序员,他们希望了解大多数Unix系统提供的各种服务的详细情况。本书中的实例本书包含大量实例—大约10000行源代码。所有实例都用ANSLC语言编写。在
5、阅读本书时,你应当有一本你所使用的UNIX系统的Unix程序员手册,关于实施的细节等有时需参考该手册。对于几乎每一个函数和系统调用,本书都用一个小的完整的程序进行演示。这可以让我们清楚地了解它们的用法,包括参数、返回值等。有些小程序还不是以说明库函数和系统调用的复杂功能和应用技巧,所以本书中也包含了一些较大的实例(第十六、十七、十八和十九章)。所有实例的源代码文件都可经Internet用匿名ftp取到,其主机站点是ftjp.uu.net,文件名是published/books/stevens.advp
6、rog.tar.Z。在你的机器上可对这些源代码进行修改并运行它们。用于测试实例的系统不幸的是所有操作系统都在不断变更,Unix也不例外。下图示出了系统V和4.XBSD的最近进展情况。4.XBSD是由加州大学贝克莱分校计算机系统研究组开发的。该研究组也发布BSDNET1和BSDNET2版,它们包含了4.XBSD系统公众可用源代码。SVRX是AT&T的系统V的简称。XPG3是X/Open可移植性指南的第三次发行本的简称。ANSIC是C程序设计语言的ANSI标准。POSIX.1是Unix类系统界面的IEEE
7、和ISD标准。2.2和2.3节将对这些标准和版本之间的差别作更多说明。在本书中,用4.3+BSD表示BSDNET2和4.4BSD之间的Unix系统。在本书写作时,4.4BSD尚未发行,所以不能称一个系统为4.4BSD。尽管为此,需要一个简单的名字以引用此种系统,在全书中我们用4.3+BSD。本书中的大多数实例曾在4种Unix系统上运行过,它们是:1.U.H公司(UHC)的UnixSystemV/386Release4.0Version2.0。该系统在Intel80386处理机上运行。2.加州大学贝克莱
8、分校计算机科学系(ComputerScienceDivision)计算机系统研究组的4.3+BSD,该系统在一台HP工作站上运行。3.贝克莱软件设计公司的BSD/386(是BSDNet2的导出版),该系统在一台Intel80386处理机系统上运行。该系统几乎与我们称之为4.3+BSD的相同。4.SunMicrosystems的SunOS4.1.1和4.1.2(该系统与贝克莱系统有很深的渊源团系,但也包含了很多系统V的特征),这些系统在SPARC工作站SL
此文档下载收益归作者所有