POSIX标准最初由IEEE(Institute of Electrical and Electronics Engineers)提出,后来被ISO(International Organization for Standardization)和IEC(International Electrotechnical Commission)共同批准。该标准最初发布于1988年,目前最新版本为2018年发布的POSIX.1-2017。
POSIX标准的主要目的是为了解决不同操作系统之间的兼容性问题。在不同的操作系统上,API的实现方式可能会有所不同,这就导致了应用程序在不同操作系统上运行时需要进行修改。而POSIX标准则定义了一套通用的API,使得应用程序可以在不同的操作系统上运行而无需进行修改。
POSIX标准包括多个部分,其中最重要的是POSIX.1标准。该标准定义了一系列基本的API,包括文件操作、进程管理、信号处理、用户和组管理等方面的接口。此外,POSIX标准还包括了一些扩展API,如POSIX.2标准定义了一些Shell和工具的接口,POSIX.4标准定义了一些实时操作系统的接口。
POSIX标准的实现可以分为两种方式:系统调用和库函数。系统调用是指应用程序直接调用操作系统提供的接口,而库函数则是通过封装系统调用来提供更高层次的接口。在Linux系统中,POSIX标准的实现主要是通过库函数的方式来实现的,如glibc库就是一个常用的POSIX标准库。
POSIX标准的应用非常广泛,几乎所有的Unix和类Unix操作系统都支持POSIX标准。此外,POSIX标准也被广泛应用于嵌入式系统、网络设备、工业控制等领域。
相关标准
- ISO/IEC 9945-1:2008 Information technology -- Portable Operating System Interface (POSIX) -- Part 1: Base Definitions
- ISO/IEC 9945-2:1993 Information technology -- Portable Operating System Interface (POSIX) -- Part 2: Shell and Utilities
- ISO/IEC 9945-3:1993 Information technology -- Portable Operating System Interface (POSIX) -- Part 3: System Administration
- ISO/IEC 9945-4:1993 Information technology -- Portable Operating System Interface (POSIX) -- Part 4: Real-time Extensions
- ISO/IEC 9945-5:1997 Information technology -- Portable Operating System Interface (POSIX) -- Part 5: Ada Language Interfaces