POSIX
Encyclopedia
POSIX an acronym for "Portable Operating System Interface", is a family of standard
s specified by the IEEE
for maintaining compatibility between operating system
s. POSIX defines the application programming interface
(API), along with command line shell
s and utility interfaces, for software compatible with variants of Unix
and other operating systems.
/IEC
9945.
The standards, formerly known as IEEE-IX, emerged from a project that began circa 1985.
Richard Stallman
suggested the name POSIX in response to an IEEE request for a memorable name.
-like operating system
environments originally consisted of a single document for the core programming interface, but eventually grew to 17 separate documents. The standardized user command line and scripting interface were based on the Korn shell
. Many user-level programs, services, and utilities including awk, echo, ed were also standardized, along with required program-level services including basic I/O
(file
, terminal
, and network
) services. POSIX also defines a standard threading
library API which is supported by most modern operating systems. Nowadays, 10 out of these 17 parts are combined into a single standard, IEEE Std 1003.1-2008, also known as POSIX:2008.
, POSIX documentation is divided in two parts:
A test suite for POSIX accompanies the standard: PCTS or the POSIX Conformance Test Suite.
The development of the POSIX standard takes place in the Austin Group
, a joint working group
linking the Open Group and the ISO organization.
developed the POSIX revisions. The specifications are known under the name Single UNIX Specification
, before they become a POSIX standard when formally approved by the ISO.
This standard consisted of:
.
Its contents are available on the web.
A free online copy is available.
This standard consists of:
and du
utilities, reflecting the default size of blocks on disks. When Richard Stallman and the GNU
team were implementing POSIX for the GNU operating system
, they objected to this on the grounds that most people think in terms of 1024 byte (or 1 KiB
) blocks. The environmental variable POSIXLY_CORRECT was introduced to force the standards-compliant behaviour. The variable POSIX_ME_HARDER was also discussed and was implemented in a few packages before being obsoleted by POSIXLY_CORRECT.
:
include:
Standardization
Standardization is the process of developing and implementing technical standards.The goals of standardization can be to help with independence of single suppliers , compatibility, interoperability, safety, repeatability, or quality....
s specified by the IEEE
Institute of Electrical and Electronics Engineers
The Institute of Electrical and Electronics Engineers is a non-profit professional association headquartered in New York City that is dedicated to advancing technological innovation and excellence...
for maintaining compatibility between operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
s. POSIX defines the application programming interface
Application programming interface
An application programming interface is a source code based specification intended to be used as an interface by software components to communicate with each other...
(API), along with command line shell
Shell (computing)
A shell is a piece of software that provides an interface for users of an operating system which provides access to the services of a kernel. However, the term is also applied very loosely to applications and may include any software that is "built around" a particular component, such as web...
s and utility interfaces, for software compatible with variants of Unix
Unix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
and other operating systems.
Name
Originally, the name "POSIX" referred to IEEE Std 1003.1-1988, released, as the name suggests, in 1988. The family of POSIX standards is formally designated as IEEE 1003 and the international standard name is ISOInternational Organization for Standardization
The International Organization for Standardization , widely known as ISO, is an international standard-setting body composed of representatives from various national standards organizations. Founded on February 23, 1947, the organization promulgates worldwide proprietary, industrial and commercial...
/IEC
International Electrotechnical Commission
The International Electrotechnical Commission is a non-profit, non-governmental international standards organization that prepares and publishes International Standards for all electrical, electronic and related technologies – collectively known as "electrotechnology"...
9945.
The standards, formerly known as IEEE-IX, emerged from a project that began circa 1985.
Richard Stallman
Richard Stallman
Richard Matthew Stallman , often shortened to rms,"'Richard Stallman' is just my mundane name; you can call me 'rms'"|last= Stallman|first= Richard|date= N.D.|work=Richard Stallman's homepage...
suggested the name POSIX in response to an IEEE request for a memorable name.
Overview
The POSIX specifications for UnixUnix
Unix is a multitasking, multi-user computer operating system originally developed in 1969 by a group of AT&T employees at Bell Labs, including Ken Thompson, Dennis Ritchie, Brian Kernighan, Douglas McIlroy, and Joe Ossanna...
-like operating system
Operating system
An operating system is a set of programs that manage computer hardware resources and provide common services for application software. The operating system is the most important type of system software in a computer system...
environments originally consisted of a single document for the core programming interface, but eventually grew to 17 separate documents. The standardized user command line and scripting interface were based on the Korn shell
Korn shell
The Korn shell is a Unix shell which was developed by David Korn in the early 1980s and announced at USENIX on July 14, 1983. Other early contributors were AT&T Bell Labs developers Mike Veach, who wrote the emacs code, and Pat Sullivan, who wrote the vi code...
. Many user-level programs, services, and utilities including awk, echo, ed were also standardized, along with required program-level services including basic I/O
Input/output
In computing, input/output, or I/O, refers to the communication between an information processing system , and the outside world, possibly a human, or another information processing system. Inputs are the signals or data received by the system, and outputs are the signals or data sent from it...
(file
Computer file
A computer file is a block of arbitrary information, or resource for storing information, which is available to a computer program and is usually based on some kind of durable storage. A file is durable in the sense that it remains available for programs to use after the current program has finished...
, terminal
Computer terminal
A computer terminal is an electronic or electromechanical hardware device that is used for entering data into, and displaying data from, a computer or a computing system...
, and network
Computer network
A computer network, often simply referred to as a network, is a collection of hardware components and computers interconnected by communication channels that allow sharing of resources and information....
) services. POSIX also defines a standard threading
Thread (computer science)
In computer science, a thread of execution is the smallest unit of processing that can be scheduled by an operating system. The implementation of threads and processes differs from one operating system to another, but in most cases, a thread is contained inside a process...
library API which is supported by most modern operating systems. Nowadays, 10 out of these 17 parts are combined into a single standard, IEEE Std 1003.1-2008, also known as POSIX:2008.
, POSIX documentation is divided in two parts:
- POSIX:2008: POSIX Base Definitions, System Interfaces, and Commands and Utilities (which include POSIX.1, extensions for POSIX.1, Real-time Services, Threads Interface, Real-time Extensions, Security Interface, Network File Access and Network Process-to-Process Communications, User Portability Extensions, Corrections and Extensions, Protection and Control Utilities and Batch System Utilities)
- POSIX Conformance Testing
A test suite for POSIX accompanies the standard: PCTS or the POSIX Conformance Test Suite.
The development of the POSIX standard takes place in the Austin Group
Austin Group
The Austin Group or the Austin Common Standards Revision Group is a joint technical working group formed to develop and maintain a common revision of POSIX.1 and parts of the Single UNIX Specification....
, a joint working group
Working group
A working group is an interdisciplinary collaboration of researchers working on new research activities that would be difficult to develop under traditional funding mechanisms . The lifespan of the WG can last anywhere between a few months and several years...
linking the Open Group and the ISO organization.
POSIX.1
- POSIX.1, Core Services (incorporates Standard ANSI CANSI CANSI C refers to the family of successive standards published by the American National Standards Institute for the C programming language. Software developers writing in C are encouraged to conform to the standards, as doing so aids portability between compilers.-History and outlook:The first...
) (IEEE Std 1003.1-1988)- ProcessProcess (computing)In computing, a process is an instance of a computer program that is being executed. It contains the program code and its current activity. Depending on the operating system , a process may be made up of multiple threads of execution that execute instructions concurrently.A computer program is a...
Creation and Control - SignalsSignal (computing)A signal is a limited form of inter-process communication used in Unix, Unix-like, and other POSIX-compliant operating systems. Essentially it is an asynchronous notification sent to a process in order to notify it of an event that occurred. When a signal is sent to a process, the operating system...
- Floating Point ExceptionsSIGFPEOn POSIX compliant platforms, SIGFPE is the signal sent to a process when it performs an erroneous arithmetic operation. The symbolic constant for SIGFPE is defined in the header file signal.h.- Etymology :...
- Segmentation / Memory ViolationsSIGSEGVOn POSIX-compliant platforms, SIGSEGV is the signal sent to a process when it makes an invalid memory reference, or segmentation fault. The symbolic constant for SIGSEGV is defined in the header file signal.h...
- Illegal InstructionsSIGILLOn POSIX-compliant platforms, SIGILL is the signal sent to a process when it attempts to execute a malformed, unknown, or privileged instruction. The symbolic constant for SIGILL is defined in the signal.h header file...
- Bus ErrorsSIGBUSOn POSIX-compliant platforms, SIGBUS is the signal sent to a process when it causes a bus error. The symbolic constant for SIGBUS is defined in the header file signal.h. Symbolic signal names are used because signal numbers can vary across platforms....
- TimersSIGALRMOn POSIX-compliant platforms, SIGALRM is the signal sent to a process when a time limit has elapsed. The symbolic constant for SIGALRM is defined in the signal.h header file. Symbolic signal names are used because signal numbers can vary across platforms....
- File and Directory Operations
- PipesPipeline (Unix)In Unix-like computer operating systems , a pipeline is the original software pipeline: a set of processes chained by their standard streams, so that the output of each process feeds directly as input to the next one. Each connection is implemented by an anonymous pipe...
- C Library (Standard C)C standard libraryThe C Standard Library is the standard library for the programming language C, as specified in the ANSI C standard.. It was developed at the same time as the C POSIX library, which is basically a superset of it...
- I/OInput/outputIn computing, input/output, or I/O, refers to the communication between an information processing system , and the outside world, possibly a human, or another information processing system. Inputs are the signals or data received by the system, and outputs are the signals or data sent from it...
Port Interface and Control - Process Triggers
- Process
POSIX.1b
- POSIX.1b, Real-time extensions (IEEE Std 1003.1b-1993)
- Priority SchedulingScheduling (computing)In computer science, a scheduling is the method by which threads, processes or data flows are given access to system resources . This is usually done to load balance a system effectively or achieve a target quality of service...
- Real-Time Signals
- Clocks and Timers
- SemaphoresSemaphore (programming)In computer science, a semaphore is a variable or abstract data type that provides a simple but useful abstraction for controlling access by multiple processes to a common resource in a parallel programming environment....
- Message PassingMessage passingMessage passing in computer science is a form of communication used in parallel computing, object-oriented programming, and interprocess communication. In this model, processes or objects can send and receive messages to other processes...
- Shared MemoryShared memoryIn computing, shared memory is memory that may be simultaneously accessed by multiple programs with an intent to provide communication among them or avoid redundant copies. Depending on context, programs may run on a single processor or on multiple separate processors...
- AsynchAsynchronous I/OAsynchronous I/O, or non-blocking I/O, is a form of input/output processing that permits other processing to continue before the transmission has finished....
and Synch I/O - Memory Locking Interface
- Priority Scheduling
POSIX.1c
- POSIX.1c, Threads extensionsPOSIX ThreadsPOSIX Threads, usually referred to as Pthreads, is a POSIX standard for threads. The standard, POSIX.1c, Threads extensions , defines an API for creating and manipulating threads....
(IEEE Std 1003.1c-1995)- Thread Creation, Control, and Cleanup
- Thread Scheduling
- Thread Synchronization
- Signal Handling
POSIX.2
- POSIX.2, Shell and Utilities (IEEE Std 1003.2-1992)
- Command Interpreter
- Utility Programs
Versions after 1997
After 1997, the Austin GroupAustin Group
The Austin Group or the Austin Common Standards Revision Group is a joint technical working group formed to develop and maintain a common revision of POSIX.1 and parts of the Single UNIX Specification....
developed the POSIX revisions. The specifications are known under the name Single UNIX Specification
Single UNIX Specification
The Single UNIX Specification is the collective name of a family of standards for computer operating systems to qualify for the name "Unix"...
, before they become a POSIX standard when formally approved by the ISO.
POSIX:2001
POSIX:2001 or IEEE Std 1003.1-2001 equates to the Single UNIX Specification version 3This standard consisted of:
- the Base Definitions, Issue 6,
- the System Interfaces and Headers, Issue 6,
- the Commands and Utilities, Issue 6.
POSIX:2004
POSIX:2004 or IEEE Std 1003.1-2004 involved a minor update of POSIX:2001. It incorporated two technical corrigendaErratum
An erratum or corrigendum is a correction of a book. An erratum is most commonly issued shortly after its original text is published. Patches to security issues in a computer program are also sometimes called errata. As a general rule, publishers issue an erratum for a production error An erratum...
.
Its contents are available on the web.
POSIX:2008
POSIX:2008 or IEEE Std 1003.1-2008 represents the current version.A free online copy is available.
This standard consists of:
- the Base Definitions, Issue 7,
- the System Interfaces and Headers, Issue 7,
- the Commands and Utilities, Issue 7.
512- vs 1024-byte blocks
POSIX mandates 512-byte block sizes for the dfDf (Unix)
df is a standard Unix computer program used to display the amount of available disk space for filesystems on which the invoking user has appropriate read access...
and du
Du (Unix)
du is a standard Unix program used to estimate file space usage—space used under a particular directory or files on a file system.- Specification :...
utilities, reflecting the default size of blocks on disks. When Richard Stallman and the GNU
GNU
GNU is a Unix-like computer operating system developed by the GNU project, ultimately aiming to be a "complete Unix-compatible software system"...
team were implementing POSIX for the GNU operating system
GNU Hurd
GNU Hurd is a free software Unix-like replacement for the Unix kernel, released under the GNU General Public License. It has been under development since 1990 by the GNU Project of the Free Software Foundation...
, they objected to this on the grounds that most people think in terms of 1024 byte (or 1 KiB
Kibibyte
The kibibyte is a multiple of the unit byte for quantities of digital information. The binary prefix kibi means 1024; therefore, 1 kibibyte is . The unit symbol for the kibibyte is KiB. The unit was established by the International Electrotechnical Commission in 1999 and has been accepted for use...
) blocks. The environmental variable POSIXLY_CORRECT was introduced to force the standards-compliant behaviour. The variable POSIX_ME_HARDER was also discussed and was implemented in a few packages before being obsoleted by POSIXLY_CORRECT.
POSIX-oriented operating systems
Depending upon the degree of compliance with the standards, one can classify operating systems as fully or partly POSIX compatible. Certified products can be found at the IEEE's website.Fully POSIX-compliant
The following operating systems conform (i.e., are 100% compliant) to one or more of the various POSIX standards.- A/UXA/UXA/UX was Apple Computer’s implementation of the Unix operating system for some of their Macintosh computers. The later versions of A/UX ran on the Macintosh II, Quadra and Centris series of machines as well as the SE/30. A/UX was first released in 1988, with the final version released in 1995...
- AIX
- BSD/OSBSD/OSBSD/OS was a proprietary version of the BSD operating system developed by Berkeley Software Design, Inc. ....
- DSPnanoDSPnano RTOSDSPnano is an embedded real-time operating system which is 100% compatible with POSIX and offers a tiny embedded Linux compatible solution. It was first created in 1996 and was one of the first pthread based real-time kernels...
- HP-UXHP-UXHP-UX is Hewlett-Packard's proprietary implementation of the Unix operating system, based on UNIX System V and first released in 1984...
- INTEGRITYIntegrity (operating system)INTEGRITY is a real-time operating system produced and marketed by Green Hills Software. It is royalty-free, POSIX-certified, and intended for use in embedded systems needing reliability, availability, and fault tolerance. It is built atop the velOSity microkernel and is intended mainly for modern...
- IRIXIRIXIRIX is a computer operating system developed by Silicon Graphics, Inc. to run natively on their 32- and 64-bit MIPS architecture workstations and servers. It was based on UNIX System V with BSD extensions. IRIX was the first operating system to include the XFS file system.The last major version...
- LynxOSLynxOSThe LynxOS RTOS is a Unix-like real-time operating system from LynuxWorks . Sometimes known as the Lynx Operating System, LynxOS features full POSIX conformance and, more recently, Linux compatibility...
- Mac OS XMac OS XMac OS X is a series of Unix-based operating systems and graphical user interfaces developed, marketed, and sold by Apple Inc. Since 2002, has been included with all new Macintosh computer systems...
- MINIXMinixMINIX is a Unix-like computer operating system based on a microkernel architecture created by Andrew S. Tanenbaum for educational purposes; MINIX also inspired the creation of the Linux kernel....
- MPE/iX
- QNXQNXQNX is a commercial Unix-like real-time operating system, aimed primarily at the embedded systems market. The product was originally developed by Canadian company, QNX Software Systems, which was later acquired by Canadian BlackBerry-producer Research In Motion.-Description:As a microkernel-based...
- RTEMSRTEMSRTEMS is a free open source real-time operating system designed for embedded systems....
(POSIX 1003.13-2003 Profile 52) - SolarisSolaris Operating SystemSolaris is a Unix operating system originally developed by Sun Microsystems. It superseded their earlier SunOS in 1993. Oracle Solaris, as it is now known, has been owned by Oracle Corporation since Oracle's acquisition of Sun in January 2010....
- Tru64Tru64 UNIXTru64 UNIX is a 64-bit UNIX operating system for the Alpha instruction set architecture , currently owned by Hewlett-Packard . Previously, Tru64 UNIX was a product of Compaq, and before that, Digital Equipment Corporation , where it was known as Digital UNIX .As its original name suggests, Tru64...
- Unison RTOSUnison Operating SystemThe Unison Operating System is a real-time operating system optimized for system-on-a-chip , multi-core and digital signal processor systems. It is open source. It offers Linux compatibility while being much smaller than Linux...
- UnixWareUnixWareUnixWare is a Unix operating system maintained by The SCO Group . UnixWare is typically deployed as a server rather than desktop. Binary distributions of UnixWare are available for x86 architecture computers. It was originally released by Univel, a jointly owned venture of AT&T's Unix System...
- velOSity
- VxWorksVxWorksVxWorks is a real-time operating system developed as proprietary software by Wind River Systems of Alameda, California, USA. First released in 1987, VxWorks is designed for use in embedded systems.- History :...
Mostly POSIX-compliant
The following, while not officially certified as POSIX compatible, conform in large part:- BeOSBeOSBeOS is an operating system for personal computers which began development by Be Inc. in 1991. It was first written to run on BeBox hardware. BeOS was optimized for digital media work and was written to take advantage of modern hardware facilities such as symmetric multiprocessing by utilizing...
/ HaikuHaiku (operating system)Haiku is a free and open source operating system compatible with BeOS. Its development began in 2001, and the operating system became self-hosting in 2008, with the first alpha release in September 2009, the second in May 2010 and the third in June 2011.... - FreeBSDFreeBSDFreeBSD is a free Unix-like operating system descended from AT&T UNIX via BSD UNIX. Although for legal reasons FreeBSD cannot be called “UNIX”, as the direct descendant of BSD UNIX , FreeBSD’s internals and system APIs are UNIX-compliant...
- GNU/Linux (most distributions — see Linux Standard BaseLinux Standard BaseThe Linux Standard Base is a joint project by several Linux distributions under the organizational structure of the Linux Foundation to standardize the software system structure, including the filesystem hierarchy, used with Linux operating system...
) - ContikiContikiContiki is a small, open source, highly portable multitasking computer operating system developed for use on a number of memory-constrained networked systems ranging from 8-bit computers to embedded systems on microcontrollers, including sensor network motes...
- NetBSDNetBSDNetBSD is a freely available open source version of the Berkeley Software Distribution Unix operating system. It was the second open source BSD descendant to be formally released, after 386BSD, and continues to be actively developed. The NetBSD project is primarily focused on high quality design,...
- Nucleus RTOSNucleus RTOSNucleus OS is a real-time operating system and toolset created by the Embedded Systems Division of Mentor Graphics for various central processing unit platforms. Nucleus OS is an embedded software solution and is in an estimated 2.11 billion devices worldwide.Development is typically done on a...
- OpenBSDOpenBSDOpenBSD is a Unix-like computer operating system descended from Berkeley Software Distribution , a Unix derivative developed at the University of California, Berkeley. It was forked from NetBSD by project leader Theo de Raadt in late 1995...
- OpenSolarisOpenSolarisOpenSolaris was an open source computer operating system based on Solaris created by Sun Microsystems. It was also the name of the project initiated by Sun to build a developer and user community around the software...
- PikeOSPikeOSPikeOS is a microkernel-based real-time operating system made by SYSGO AG. It is targeted at safety and security critical embedded systems. It provides a partitioned environment for multiple operating systems with different design goals, safety requirements, or security requirements to coexist in a...
RTOS for embedded systems with optional PSE51 and PSE52 partitions; see partition (mainframe) - RTEMSRTEMSRTEMS is a free open source real-time operating system designed for embedded systems....
– POSIX API support designed to IEEE Std. 1003.13-2003 PSE52 - SanosSanosFor the Macedonian bus industry from Skopje, see FAS Sanos.Sanos is a minimalistic 32-bit x86 operating system kernel for network server appliances running on standard PC hardware...
- SkyOSSkyOSSkyOS was a prototype commercial, proprietary, graphical desktop operating system written for the x86 computer architecture. As of January 30, 2009 development has halted and no plans to resume its development have been announced.- History :...
- SyllableSyllable (operating system)Syllable Desktop is a free and open source operating system for Pentium and compatible processors. Its purpose is to create an easy-to-use desktop operating system for the home and small office user...
- VSTaVSTaVSTa was an operating system with a microkernel architecture, with all device drivers and file systems residing in userspace mode. It is mostly POSIX compliant, except when POSIX compatibility got in the way of extensibility and modularity. It was conceptually inspired by QNX and Plan 9. Written...
POSIX for Windows
- CygwinCygwinCygwin is a Unix-like environment and command-line interface for Microsoft Windows. Cygwin provides native integration of Windows-based applications, data, and other system resources with applications, software tools, and data of the Unix-like environment...
provides a largely POSIX-compliant development and run-time environment for Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
. - Microsoft POSIX subsystemMicrosoft POSIX subsystemMicrosoft POSIX subsystem is one of 3 subsystems of several operating systems from the Windows NT family ....
, an optional Windows subsystem. Partial POSIX-1 — no threads, no sockets. - Microsoft Windows Services for UNIX enables full POSIX compliance for certain Microsoft WindowsMicrosoft WindowsMicrosoft Windows is a series of operating systems produced by Microsoft.Microsoft introduced an operating environment named Windows on November 20, 1985 as an add-on to MS-DOS in response to the growing interest in graphical user interfaces . Microsoft Windows came to dominate the world's personal...
products. Windows NT-based operating systems up to Windows 2000 had a POSIX layer built into the operating system, and UNIX Services for Windows provided a UNIX-like operating environment. For Windows XP, UNIX Services for Windows must be installed to provide POSIX compatibility. The UNIX Subsystem is built in to the Enterprise and Ultimate editions of Windows Vista and 7, and cannot be added separately to the other editions. - UWINUWINUWIN is a computer software package created by David Korn which allows programs written for the operating system Unix be built and run on Microsoft Windows with few, if any, changes...
from AT&T Research implements a POSIX layer on top of the Win32 APIs. - MKS ToolkitMKS ToolkitMKS Toolkit is a software package produced and maintained by MKS Inc. that provides a Unix-like environment for scripting, connectivity and porting Unix and Linux software to both 32- and 64-bit Microsoft Windows systems. It was originally created for MS-DOS....
POSIX for OS/2
Mostly POSIX compliant environments for OS/2OS/2
OS/2 is a computer operating system, initially created by Microsoft and IBM, then later developed by IBM exclusively. The name stands for "Operating System/2," because it was introduced as part of the same generation change release as IBM's "Personal System/2 " line of second-generation personal...
:
- emx+gccEMX (programming environment)EMX , a.k.a. emx+gcc, is a programming environment for DOS and OS/2. It allows creating and executing of 32-bit mode applications, presenting a POSIX API and, on OS/2, access to the OS/2 APIs.-Contents:...
– largely POSIX compliant
POSIX for DOS
Partially POSIX compliant environments for DOSDOS
DOS, short for "Disk Operating System", is an acronym for several closely related operating systems that dominated the IBM PC compatible market between 1981 and 1995, or until about 2000 if one includes the partially DOS-based Microsoft Windows versions 95, 98, and Millennium Edition.Related...
include:
- emx+gccEMX (programming environment)EMX , a.k.a. emx+gcc, is a programming environment for DOS and OS/2. It allows creating and executing of 32-bit mode applications, presenting a POSIX API and, on OS/2, access to the OS/2 APIs.-Contents:...
– largely POSIX compliant - DJGPPDJGPPDJGPP is a development suite for 386+ IBM PC compatibles which supports DOS-enabled operating systems. It is guided by DJ Delorie, who began the project in 1989. It is a port of the popular GCC compiler, as well as mostly GNU utilities such as bash, find, tar, ls, awk, sed, and ld to DPMI...
– partially POSIX compliant
Compliant via compatibility feature
The following are not officially certified as POSIX compatible, but they conform in large part to the standards by implementing POSIX support via some sort of compatibility feature, usually translation libraries, or a layer atop the kernel. Without these features, they are usually noncompliant.- eCosECoseCos is an open source, royalty-free, real-time operating system intended for embedded systems and applications which need only one process with multiple threads. It is designed to be customizable to precise application requirements of run-time performance and hardware needs...
– POSIX is part of standard distribution, and used by many applications. 'external links' section below has more information. - MorphOSMorphOSMorphOS is an Amiga-compatible computer operating system. It is a mixed proprietary and open source OS produced for the Pegasos PowerPC processor based computer, PowerUP accelerator equipped Amiga computers, and a series of Freescale development boards that use the Genesi firmware, including the...
(through the built-in ixemul library) - OpenVMSOpenVMSOpenVMS , previously known as VAX-11/VMS, VAX/VMS or VMS, is a computer server operating system that runs on VAX, Alpha and Itanium-based families of computers. Contrary to what its name suggests, OpenVMS is not open source software; however, the source listings are available for purchase...
(through optional POSIX package) - OpenVOSStratus VOSVOS is a proprietary operating system running on Stratus Technologies fault-tolerant computer systems. VOS is available on Stratus's ftServer and Continuum platforms...
is an optional POSIX-compliant layer atop the Stratus VOSStratus VOSVOS is a proprietary operating system running on Stratus Technologies fault-tolerant computer systems. VOS is available on Stratus's ftServer and Continuum platforms...
kernel - Plan 9 from Bell LabsPlan 9 from Bell LabsPlan 9 from Bell Labs is a distributed operating system. It was developed primarily for research purposes as the successor to Unix by the Computing Sciences Research Center at Bell Labs between the mid-1980s and 2002...
APE - ANSI/POSIX Environment - Symbian OS with PIPS (PIPS Is POSIX on Symbian)
- Windows NT kernel when using Microsoft SFU 3.5 or SUA
- Windows 2000 Server or Professional with Service Pack 3 or laterWindows 2000Windows 2000 is a line of operating systems produced by Microsoft for use on personal computers, business desktops, laptops, and servers. Windows 2000 was released to manufacturing on 15 December 1999 and launched to retail on 17 February 2000. It is the successor to Windows NT 4.0, and is the...
. To be POSIX compliant, one must activate optional features of Windows NT and Windows 2000 Server. - Windows XP Professional with Service Pack 1 or laterWindows XPWindows XP is an operating system produced by Microsoft for use on personal computers, including home and business desktops, laptops and media centers. First released to computer manufacturers on August 24, 2001, it is the second most popular version of Windows, based on installed user base...
- Windows Server 2003Windows Server 2003Windows Server 2003 is a server operating system produced by Microsoft, introduced on 24 April 2003. An updated version, Windows Server 2003 R2, was released to manufacturing on 6 December 2005...
- Windows VistaWindows VistaWindows Vista is an operating system released in several variations developed by Microsoft for use on personal computers, including home and business desktops, laptops, tablet PCs, and media center PCs...
- Windows 7
- Windows 2000 Server or Professional with Service Pack 3 or later
- z/OSZ/OSz/OS is a 64-bit operating system for mainframe computers, produced by IBM. It derives from and is the successor to OS/390, which in turn followed a string of MVS versions.Starting with earliest:*OS/VS2 Release 2 through Release 3.8...
See also
- POSIX signal
- POSIX ThreadsPOSIX ThreadsPOSIX Threads, usually referred to as Pthreads, is a POSIX standard for threads. The standard, POSIX.1c, Threads extensions , defines an API for creating and manipulating threads....
- TRON ProjectTRON ProjectTRON is an open real-time operating system kernel design, and is an acronym for "The Real-time Operating system Nucleus". The project was started by Prof. Dr. Ken Sakamura of the University of Tokyo in 1984...
– alternative OS standard to POSIX - InterixInterixInterix is the name of an optional, full-featured POSIX and Unix environment subsystem for Microsoft's Windows NT-based operating systems.Interix is a component of the Services for Unix release 3.0 and 3.5...
– a full-featured POSIX and Unix environment subsystem for Microsoft's Windows NT-based operating systems - C POSIX libraryC POSIX libraryThe C POSIX library is a specification of a C standard library for POSIX systems. It was developed at the same time as the ANSI C standard. Some effort was made to make POSIX compatible with standard C; POSIX includes additional functions to those introduced in standard C.- C POSIX library header...
- Real-time operating systemReal-time operating systemA real-time operating system is an operating system intended to serve real-time application requests.A key characteristic of a RTOS is the level of its consistency concerning the amount of time it takes to accept and complete an application's task; the variability is jitter...