Unix标准及实现

1、名称解释

  1. 组织
  • ANSI: 美国国家标准学会(American National Standards Institute)
  • ISO:国际标准化组织(International Organization for Standardization)
  • IEF: 国际电子技术委员会(International Electrotechnical Commission)
  • IEEE: 电气和电子工程师学会(Institute of Electrical and Electronics Engineers)
  1. 协议
  • POSIX: 可移植操做系统接口(Portable Operationg System Interface)
  • SUS:单一UNIX规范(Single Unix Specification)

2、各协议发展

1. ISO C: C程序的可移植性

  • 1989年下半年:C程序设计语言的ANSI标准 X3.159-1989 获得批准。此标准被采纳为国际标准 ISO/IEC 9899:1990
  • 1999年,ISO C标准被更新,被批准为 ISO/IEC 9899:1999

2. IEEE POSIX (包含了ISO C的标准)可移植的操做系统接口

  • 1988年:修订整合,命名:IEEE标准 1003.1-1990(POSIX.1)-->提交给ISO,就是国际标准 ISO/IEF 9945-1:1990
  • 1996年:修订版发布:(国际版: ISO/IEC 9945-1:1996)
    • 包含:1003.1-1990、1003.1b-19九、pthreads的多线程编程接口
  • 1999年:出版 IEEE标准 1003.1d-19999
  • 2000年:出版 IEEE标准 1003.1j-2000 和 1003.1q-2000
  • 2001年:出版 IEEE标准 1003.1-2001
    • Single UNIX Specification 第2版本
    • ISO/IEC 9899-1999,C程序设计语言
  • 2001年:出版 IEEE标准 1003.1 2004年版
  • 2009年: 国际标准 ISO/IEC 9945:2009。包涵:
    • IEEE标准 1003.1,2004年版
    • 开发组织标准,2006,扩展API集
    • ISO/IEC 9899:1999,包含勘误表

3. Single Unix Specification 单一UNIX规范

POSIX.1的超集,定义了附加接口扩展了POSIX接口编程

  • 1994年: 发布第一个版本
  • 1997年: 发布第二个版本
  • 2004年: 第3版2004年班
  • 2010年: SUS第四版

限制

选项

功能测试宏

基本系统数据类型

类型 类型 说明
clock_t 时钟滴答计数器(进程时间)
comp_t 压缩的时钟滴答
dev_t 设备号(主次)
fd_set 文件描述符集
fpos_t 文件位置
gid_t 数值组ID
ino_t i节点编号
mode_t 文件类型,文件建立模式
nlink_t 目录项的连接计数
off_t 文件长度和偏移量(带符号的)
pid_t 进程ID和进程组ID
pthread_t 线程ID
ptrdiff_t 两个指针想减的结果(带符号的)
rlim_t 资源限制
sig_atomic_t 能原子性地访问的数据类型
sigset_t 信号集
size_t 对象(如字符串)长度(不带符号的)
ssize_t 返回字节计数的函数(带符号的),read,write
time_t 日历时间的秒计数器
uid_t 数值用户ID
wchar_t 能表示全部不一样的字符码
相关文章
相关标签/搜索