UNIX标准化及实现之功能测试宏】的更多相关文章

在头文件中定义了很多POSIX.1和XSI的符号.但是除了POSIX.1和XSI的定义之外,大多数实现在这些头文件中也加上了它们自己的定义.如果在编译一个程序时,希望它只使用POSIX定义而不使用任何实现自己定义的限制,那么就需要定义常量_POSIX_C_SOURCE.所有POSIX.1头文件中都使用此常量.当定义该常量时,就能排除任何实现专有的定义. 注:POSIX.1标准的以前版本都定义了_POSIX_SOURCE常量.在POSIX.1的2001版中,它被替换为_POSIX_C_SOURCE…
一.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规范…
1.UNIX标准化 1.1.ISO C 1989 年后期,C程序设计语言的ANSI(American National Standards Institute) 标准X3. 15 9-1989得到批准( ANSI 1989) . 此标准已被采用为国际 标准 ISO/IEC 9899:1990. 1999年,ISO C给根性为ISO/IEC 9899:1999. 按照ISO C标准定义了各个头文件(header),可将ISO C库分成24个区.下表列出了C标准定义的各个头文件. 1.2.IEEE…
本章节介绍个UNIX编程环境的标准化的进展,对ISO C,POSIX和Single UNIX Specification三个主要标准进行了说明 本章后面部分介绍了限制的具体实例. 我学习本章的心得是:云里雾里,不知道这些标准的具体有和用处,和限制的作用,捉不到本章的关键,做个记号,回头重新细读一遍.…
前言 UNIX系统实现定义了很多幻数和常量,其中有很多已被硬编码(关于硬编码和软编码:http://www.cnblogs.com/chenkai/archive/2009/04/10/1432903.html)进程序中,或用特定的技术确定.由于大量标准化工作的努力,已有若干种可移植的方法用以确定这些幻数和实现定义的限制.这非常有助于软件的可移植性. 以下两种类型的限制是必需的: (1)编译时限制(例如,短整型的最大值是什么?). (2)运行时限制(例如,文件名可以有多少个字符?). 编译时限制…
POSIX标准定义的必需头文件 头文件 说明 <dirent.h> 目录项 <fcntl.h> 文件控制 <fnmatch.h> 文件名匹配类型 <glob.h> 路径名模式匹配类型 <grp.h> 组文件 <netdb.h> 网络数据库操作 <pwd.h> 口令文件 <regex.h> 正则表达式 <tar.h> tar归档值 <termios.h> 终端I/O <unistd.…
就整体而言,这些不同的标准之间配合得相当好.但是我们也很关注它们之间的差别,特别是ISO C标准和POSIX.1之间的差别. ISO C定义了函数clock,它返回进程使用的CPU时间,返回值类型是clock_t.为了将此值变换成以秒为单位,将其除以在<time.h>头文件中定义的CLOCKS_PER_SEC.POSIX.1定义了函数times,它返回其调用者及其所有终止子进程的CPU时间以及时钟时间,所有这些值都是clock_t类型值.sysconf函数用来获取每秒中的滴答数,用于表示tim…
历史上,某些UNIX系统变量已与某些C数据类型联系在一起.例如,历史上主.次设备号一直存放在一个16位的短整型中,8位表示主设备号,另外8位表示次设备号.但是,很多较大的系统需要用多于256个值来表示其设备号,于是,就需要有一种不同的技术. 头文件<sys/types.h>中定义了某些与实现有关的数据类型,它们被称为基本系统数据类型(primitive system data type).还有很多这种数据类型定义在其他头文件中.在头文件中,这些数据类型都是用C的typedef功能来定义的.它们…
POSIX.1的2001版,包括了ISO C标准所指定的各个函数.其接口分成了两类:必需接口和可选接口.可选接口按功能又进一步分成50个区.表1中按它们各自的选项代码总结了没有被弃用的编程接口.选项代码是由2-3个字符构成的字母缩写,以便标识属于各个功能区的接口.选项代码会突出显示手册相关页面上的文本,表明接口依赖于对特定选项的支持.很多选项处理实时扩展. 表1 POSIX.1可选接口组和代码(SUS,Single UNIX Specification) 代码 SUS强制要求 符号常量 说明 A…
POSIX标准定义的可选头文件 头文件 说明 <aio.h> 异步I/O <mqueue.h> 消息队列 <pthread.h> 线程 <sched.h> 执行调度 <semaphore.h> 信号量 <spawn.h> 实时spawn接口 <stropts.h> XSI STREAMS接口 <trace.h> 事件跟踪…