- 论坛徽章:
- 0
|
After 1985 the main thrust of Unix standardization passed to the Insitute of Electrical and
Electronic Engineers (IEEE). Their 1003 committee developed a series of standards generally
known as POSIX. These went beyond describing merely systems calls and C library
facilities; they specified detailed semantics of a shell and a minimum command set, and also
detailed bindings for various non-C programming languages. The first release in 1990 was
followed by a second edition in 1996. The International Standards Organization adopted
them as ISO/IEC 9945.
Key POSIX standards include:
1003.1 (released 1990)
Library procedures. Described the C systenm call API, much like Version 7 except for
signals and the terminal-control interface.
1003.2 (released 1992)
Standard shell and utilities. Shell semantics strongly resembles those of the System V
Bourne shell.
1003.4 (released 1993)
Real-time Unix. Binary semaphores, process memory locking, memory-mapped files,
shared memory, priority scheduling, real-time signals, clocks and timers, IPC message
passing, synchronized I/O, asynchronous I/O, real-time files.
In the 1996 Second Edition, 1003.4 was split into 1003.1b (real-time) and 1003.1c
(threads).
Despite being underspecified in a couple of key areas such as signal-handling semantics and
omitting BSD sockets, the original POSIX standards became the basis of all later Unix
standardization work. They are still cited as an authority, albeit indirectly through references
like POSIX Programmer's Guide [Lewine]; the de facto Unix API standard is still 鈥淧OSIX
plus sockets鈥 |
|