POSIX是对应用程序在过去如何实现UNIX的每个特定部分的描述,还是对UNIX必须如何实现的规定性规范?
如果是描述性的,则只有所有包括的实现所共有的功能才是有效的。尽管任何实现都没有实现功能,但是该功能是“未定义的”。
如果是说明性的:它基于哪个理论框架?数学?C语言?经验?
这是法律上的说明性规定,但实际上是描述性的规定。
POSIX是可以与实现匹配的一组规范,包括文档发布时已经存在的实现和将来的实现。因此,这是规定性的。
实际上,POSIX主要是作为现有实现的常见子集开始的。因此,从这个意义上讲,它主要是描述性的。但是POSIX有时会强制要求新的行为。最常见的是,对于许多实现中存在但具有不同接口(功能名称,命令行选项等)的功能,POSIX引入了一些功能和实用程序,例如pax
(替换tar
和cpio
,它们在Unix变体中非常不同)和各种posix_xxx
功能。POSIX还引入了新的常量和命令行选项。例如,对于ps
,“该-A
选项等效于BSD-g
和SVID-e
。由于两个系统不同,因此选择了助记符。”。基本原理部分通常会说明为什么包含此功能或该功能,并经常提及哪些实现已经具有该功能,或者为什么要在不兼容的实现之间做出选择。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句