最近评论
正在载入评论列表...
![]() |
![]() |
前面提到的各个标准定义了任一实际系统的子集。本书主要关注4种实际的UNIX系统:FreeBSD 5.2.1、Linux 2.4.22、Mac OS X 10.3和Solaris 9。在这4种系统中,虽然只有Solaris 9能够称自己是一种UNIX系统,但是所有这4种系统都提供UNIX编程环境。因为所有这4种系统都在不同程度上依从POSIX,所以我们也将重点关注POSIX.1标准所要求的功能,并指出这4种系统的具体实现与POSIX之间的差别。仅仅一个特定实现所特有的功能和例程会被清楚地标记出来。因为SUS v3是POSIX.1的超集,所以我们还叙述了属于SUS v3但不属于POSIX.1的功能。应当了解,这些实现都提供了对它们早期版本(例如SVR3.2和4.3BSD)功能的向后兼容性。例如,Solaris对POSIX规范中的非阻塞I/O(O_NONBLOCK)以及传统的系统V方法(O_NDELAY)都提供了支持。本书将只使用POSIX.1的功能,但是也会提及它所替代的是哪一种非标准功能。与此相类似,SVR3.2和4.3BSD以某种有别于POSIX.1标准的方法提供了可靠的信号机制。第10章将只说明POSIX.1的信号机制。