2011-11-17 72 views
3

我一直看到这个问题,每次查找它时,我都无法很好地解释它是什么或对我意味着什么。什么是POSIX合规性,它对我有什么影响?

什么是POSIX合规性?假设我的程序只能在兼容POSIX的机器上运行,如何为程序员简化我的工作?它甚至?

+1

可能的重复[我从来没有真正明白:什么是POSIX?](http://stackoverflow.com/questions/1780599/i-never-really-understood-what-is-posix) –

回答

5

POSIX定义了一组C headersSystem Interfaces,一个Shell Command LanguageUtilities,即相符的系统必须实现。

作为一名开发人员,您可以依靠每个POSIX系统上提供的这些标准接口。如果您的程序使用标准接口,则它可以在所有POSIX系统上运行。

移植到非标准系统是更多的工作,因为系统接口例如对于multithreadingnetworking是不同的。

+0

所以只要我只能在我的代码中使用C头文件和系统接口,它将以相同的方式运行任何POSIX系统(我只需要重新编译)? – achow

+0

是的,这是一般的想法。当然,如果它们是POSIX兼容的,你也可以使用外部库和它们的头文件。假设你已经观察到其他便携式编码实践,即只使用对齐的指针,处理字节顺序问题等,依赖于_implementation defined_行为会破坏可移植性,所以需要重新编译。 – mizo

相关问题