UNIX 标准及实现

UNIX 标准及实现

Unix标准化

ISO C

1989年下半年,C程序设计语言的ANSI标准X3.159-1989得到标准
ANSI时美国国家标准学会(American National Standards Institute)的缩写,它是国际标准化组织(International Organization For Standardization ,ISO)中代表美国的成员。
IEC时国际电子技术委员会(International Electrotechnical Commission)的缩写。

gcc 对ISO C标准1999版本符合程度总结可参见http:///www.gnu.org/c99status.html

ISO C 标准定义的头文件

IEEE POSIX

POSIX是一个最初由IEEE(Institute Of Electrical and Electronics Engineers )制定的标准族。
POSIX指的是可移植操作系统接口(Portable Operating System interface)/

由于1003.1标准说明了一个接口(interface)而不是一种实现(implementation),所以并不区分系统调用和库函数。所有标准中的例程都称为函数。

POSIX 标准定义的必需的头文件
POSIX 标准定义的XSl可选头文件
POSIX 标准定义的可选头文件
POSIX 可选接口组合选项码
POSIX 可选接口组合选项码续

Single UNIX specification[单一Unix规范]

single unix specification (SUS ,单一UNIX规范)是POSIX标准的超集,它定义了一些附加借口扩展了POSIX.1提供的功能。POSIX相当于 single Unix specification 的基本规范部分。

POSIX.1 中的X/open 系统接口(X/Open system interface ,XSI)选项描述了可选的接口,也定义了遵循XSI的实现鼻血支持POSIX.1的那些可选部分。这些鼻血支持的部分包括:文件同步、线程栈地址和长度属性、线程进程共享同步遗迹_XOPEN_UNIX 符号常量。只有遵循XSI的实现才能称为UNIX系统。

Open Group 拥有Unix商标,他们使用single unix specification 定义了一系列接口。一个系统要想称为Unix系统,其实现必须支持这些接口,Unix系统供应商必须以文件形式提供符合性的声明,并通过验证符合性的测试,才能得到Unix商标的许可证。

FIPS

FIPS代表的是联邦信息处理标准(Federal InforMation Processing Standard)这一标准是由美国政府发布的,并由美国政府用于计算机系统的的采购

POSIX.1 FIPS 的作用是,它要求任何希望美国政府销售符合POSIX.1标准的计算机系统的厂商都应该支持POSIX.1的某些可选功能。

Unix 系统实现

(1)AT&T分支,从此引出了系统III和系统V(被称为UNIX的商用版本)
(2)加州大学伯克利分校分之,从此引出4.xBSD 实现
(3)由于AT&T贝尔实验室的计算机研究中心不断开发的UNIX研究版本,从此引出Unix分时系统第8版本,第9版本,终止于1990年的第10版本。

SVR4

SVR4是AT&T的unix系统实验室的产品

4.4BSD

BSD 是由加州大学伯克利分校的计算机系统研究组(CSRG)研究开发和分发的。

FreeBSD

FreeBSD 基于4.4BSD-Lite操作系统。在加州大学伯克利分校的CSRG决定终止其在UNIX操作系统的BSD版本的研究工作,而且386BSD项目被忽视很长时间之后,为了继续坚持BSD系列,形成了FreeBSD项目。

LINUX

Linux是一种提供类似于UNIX的丰富编程环境的操作系统,在GNU公用许可证的指导下,Linux是免费使用的。

Mac os X

与其以前的版本相比,Mac OS X 使用了完全不同的技术。其核心操作系统称为“Darwin”,它基于Mach内核、FreeBSD操作系统以及具有面向对象框架的驱动和其他内核扩展的结合。

Solaris

Solaris是由Sun Microsystems(现为Oracle)开发的Unix系统版本。

其他Unix系统

已通过验证的其他Unix版本包括:

  • AIX ,IBM 版本的UNIX操作系统
  • HP-UX ,HP版本的UNIX操作系统
  • IRIX,Silicon Graphics版本的操作系统
  • UNIX ware ,SVR4派生的UNIX系统,现在由SCO销售。

限制

Unix 系统实现定了很多幻数和常量,其中很多已被硬编码到程序中,或用特定的技术确定。

以下两种类型的限制时必需的。

1:编译时限制
2:运行时限制

2.5.1 ISO C限制

ISO C 定义的所有编译时限制都列在头文件<limits.h>。这些限制常量在个给定的系统中并不会改变。

limits.h 中定义的整型值的大小

我们将会遇到的一个区别是系统是否提供带符号或无符号的字符值。

2.5.2 POSIX 限制

POSIX.1 定义了很多涉及操作系统实现限制的常量,遗憾的是,这是POSIX.1最令人迷惑不解的部分之一。虽然POSIX.1定义了大量限制和常量,我们只关心与基本的POSIX.1接口有关的部分。这些限制和常量分成下列7类。

1:数值限制:LONG_BIT 、SSIZE_MAX 和 WORD_BIT
2:最小值:
3:最大值:POSIX_CLOCKRES_MIN
4:运行时可以增加的值:CHARCLASS_NAME_MAX、COLL_WEIGHTS_MAX、LINE_MAX、NGROUPS_MAX 和RE_DUP_MAX
5:运行时不变值(可能不确定)
6:其他不变值:NL_ARGMAX、NL_MSGMAX、NL_SETMAX和NL_TEXTMAX.
7:路径名可变值:FILESIZEBITS、LINK_MAX、MAX_CANON、MAX_INPUT、NAME_MAX、PATH_MAX、PIPE_BUF 和 SYMILNK_MAX。

一个严格符合(strictly conforming)POSIX 的应用区别于一个刚刚符合POSIX(merely POSIX confirming)的应用。符合POSIX的应用只使用IEEE1003.1-2001中定义的接口,严格符合POSIX的应用满足更多的限制,例如:不依赖于POSIX未定义的行为,不使用其他任何已弃用的接口以及不要求所使用的常量值大于 图 所列出的最小值。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,029评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,395评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,570评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,535评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,650评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,850评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,006评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,747评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,207评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,536评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,683评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,342评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,964评论 3 315
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,772评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,004评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,401评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,566评论 2 349

推荐阅读更多精彩内容