UNIX标准化及实现之UNIX标准化、UNIX系统实现、标准和实现的关系以及ISO C标准头文件
一、UNIX标准化
1、ISO C
(International Organization for Standardization)
2、IEEE POSIX
(Institue of Electrical and Electronics Engineers,Portable Operating System Interface)
3、Single UNIX Specification(单一UNIX规范)
POSIX.1标准的一个超集,定义了一些附加的接口,这些接口扩展了基本的POSIX.1规范提供的功能。相应的系统接口全集被称为X/Open系统接口(XSI, X/Open System Interface)。__XOPEN_UNIX符号常量标识了(相对于基本POSIX.1接口而言)XSI扩展的接口。
只有遵循XSI的实现才能称为UNIX系统。
二、UNIX系统实现
1、SVR4(UNIX System V Release 4,UNIX系统V第4版)——AT&T的UNIX系统实验室的产品。
2、4.4BSD(Berkeley Software Distribution)——加州大学伯克利分校的计算机系统研究组(CSRG)研究开发和分发的。
3、FreeBSD——其基础是4.4BSD-Lite
4、Linux——Linus Torvalds在1991年为替代MINIX而研发的。
5、Mac OS X——基于Mach内核和FreeBSD操作系统的组合。类似于FreeBSD和Linux。
6、Solaris——Sun公司开发的UNIX系统版本。基于SVR4。
...
三、标准和实现的关系
各个标准定义了任一实现系统的子集。
四、ISO C标准定义的头文件
ISO C标准定义的头文件(POSIX.1标准包括这些头文件以及另外一些头文件)
头文件 |
说明 |
<assert.h> |
验证程序断言 |
<complex.h> |
支持复数算数运算 |
<ctype.h> |
字符类型 |
<errno.h> |
出错码 |
<fenv.h> |
浮点环境 |
<float.h> |
浮点常量 |
<inttypes.h> |
整型格式转换 |
<iso646.h> |
替代关系操作符宏 |
<limits.h> |
实现常量 |
<locale.h> |
局部类别 |
<math.h> |
数学常量 |
<setjmp.h> |
非局部goto |
<signal.h> |
信号 |
<stdarg.h> |
可变参数表 |
<stdbool.h> |
布尔类型和值 |
<stddef.h> |
标准定义 |
<stdint.h> |
整型 |
<stdio.h> |
标准I/O库 |
<stdlib.h> |
实用程序函数 |
<string.h> |
字符串操作 |
<tgmath.h> |
通用类型数学宏 |
<time.h> |
时间和日期 |
<wchar.h> |
扩展到多字节和宽字符支持 |
<wctype.h> |
宽字符分类和映射支持 |