Operating system standards
Glossary:POSIX is the abbreviation of portable operating system interface of UNIX. Developed by IEEE (Institute of Electrical and Electronic Engineering) and standardized by ANSI and ISO.
Origin:The birth of POSIX is inseparable from the Development of Unix. Unix was born in Bell lab in 1970s, and the source code of V7 was distributed to major universities in the United States in 1980s for research. Based on V7, UC Berkeley developed bsd unix. Later, many commercial manufacturers realized that the value of Unix was also based on Bell lab's System V or BSD to develop their own Unix. The famous ones were Sun OS, AIX and VMS. Since various manufacturers develop UNIX independently, the unix version is quite chaotic, which brings great difficulties to the portability of software and is extremely unfavorable to the Development of UNIX. To end this situation, IEEE has developed POSIX, which defines a set of minimum Unix (Unix-like) operating system interfaces at the source code level.
POSIX indicates a portable operating system interface (POSIX ). The Institute of Electrical and Electronics Engineers (IEEE) initially developed the POSIX standard to improve the portability of applications in UNIX environments. However, POSIX is not limited to Unix. Many other operating systems, such as DEC OpenVMS and Microsoft Windows NT, support the POSIX standard, especially the IEEE Std. 1003.1-1990 (revised in December 1995) or posix.1, posix.1 provides source code-Level C language application programming interfaces (APIS) to operating system service programs, such as reading and writing files. Posix.1 is accepted by the International Standardization Organization (ISO) and named ISO/IEC 9945-1: 1990.
POSIX has now developed into a very large standard family, and some parts are under development. Table 1-1 provides several important components of the POSIX standard. POSIX is interchangeable with IEEE 1003 and 2003 family standards. Except 1003.1, 1003 and 2003 families are also included in the table.
Table 1-1: important components of the Standard
1003.0
Manage the POSIX open system environment (OSE ). IEEE passed this standard in 1995. The ISO version is ISO/IEC 14252: 1996.
1003.1
Widely accepted and used for source code-level portability standards. 1003.1 provides a C-language application programming interface (API) for the operating system ). IEEE and ISO have passed this standard in 1990, and IEEE revised it in 1995.
1003.1b
A standard for Real-Time Programming (previous p1003.4 or posix.4 ). This standard was passed by IEEE in 1993 and incorporated into ISO/IEC 9945-1.
1003.1c
A standard for threads (code segments currently executed in a program. Previously, it was part of p1993.4 or posix.4. This standard was adopted by IEEE in 1995 and is classified as ISO/IEC 9945-1: 1996.
1003.1 GB
A standard for Protocol-independent interfaces that allow an application to communicate with another application over the network. In 1996, IEEE passed this standard.
1003.2
A standard used for shell and tool software, which are the command processor and tool programs required by the operating system. In 1992, IEEE passed this standard. ISO has also passed this standard (ISO/IEC 9945-2: 1993 ).
1003.2d
Improved 1003.2 standards.
1003.5
An API is equivalent to 1003.1 of ADA languages. In 1992, IEEE passed this standard. It was revised on 1997. ISO has also passed this standard.
1003.5b
A Ada Language API equivalent to 1003.1b (Real-time extension. Both IEEE and ISO have passed this standard. The ISO standard is ISO/IEC 14519: 1999.
1003.5c
An Ada Language API equivalent to 1003.1q (Protocol Independent interface. In 1998, IEEE passed this standard. ISO has also passed this standard.
1003.9
An API equivalent to 1003.1 In the Fortran language. In 1992, IEEE passed this standard and confirmed it again on 1997. ISO has also passed this standard.
1003.10
A standard for application environment profile (AEP. In 1995, IEEE passed this standard.
1003.13
A standard for the application environment framework mainly targets real-time applications using POSIX interfaces. In 1998, IEEE passed this standard.
1003.22
A security framework guide for POSIX.
1003.23
A guide for user organizations is designed to guide users in developing and using an open system environment (OSE) framework that supports operational requirements.
2003
A standard for defining, general requirements, and guidelines for specifying and using POSIX-compliant testing methods. In 1997, IEEE passed this standard.
2003.1
This Standard specifies certain conditions that the provider of POSIX testing methods for 1003.1 will provide. In 1992, IEEE passed this standard.
2003.2
A standard that defines the testing methods used to check compliance with IEEE 1003.2 (shell and tool APIs. In 1996, IEEE passed this standard.
In addition to the 1003 and 2003 families, there are several other IEEE standards, such as 1224 and 1228, which also provide APIs for developing portable applications. For the latest information about the IEEE Standard, visit the IEEE Standard homepage at http://standards.ieee.org /. For more information about the POSIX standard, visit the website http://standards.ieee.org/reading/ieee/stad_public/description/posix /.