2.1 引言
标准化,为了可移植。
2.2 unix 标准化
ISO C 1999 :24个区,24个头文件
IEEE POSIX 1003.1:定义了一个接口而非实现,故不区分系统调用和库函数
POSIX.1:ISO/IEC 9945-1:1996,包括多线程接口:pthreads
最新,2001
Single UNIX Specification:
遵循XSI的实现才能称作Unix
2.3 unix系统实现
AT&T分支:导出系统iii和系统V
加州大学伯克利分校分支:导出4.xBSD
SVR4/4.4BSD/FreeBSD/Linux/Mac OS X/Solaris/AIX/HP-UX/IRIX/UNIX WARE
2.5 限制
编译时限制:短整形的最大值是?解决:头文件
运行时限制:文件名可以有多少个字符?
Sysconf函数:不与文件或目录相关联
Pathconf和fpathconf函数:与文件或目录相关联
ISO C 限制:都是编译时限制,<limits.h>
POSIX限制,分为5类:
用sysconf等函数得到实际的实现值。
XSI限制:
不确定的运行时限制:很麻烦,没太搞清楚
2.6 选项
2.7 功能测试宏
2.8 基本系统数据类型
头文件<sys/types.h>中定义了某些与实现有关的数据类型,被称作系统数据类型。
定义了这些数据类型后,就不再需要考虑因系统而异的程序实现细节。
2.9 标准之间的冲突
后记:当时看这一章的时候觉得很生涩抽象,也没啥意义;但看了后面的章节后,回头看这一章,还是非常有意义的。如限制、系统数据类型等。