Subsystem shipped with the first versions of Windows NT
Microsoft POSIX subsystem
Developer(s)
Microsoft
Initial release
July 27, 1993; 30 years ago (1993-07-27)
Operating system
Microsoft Windows
Platform
IA-32, Alpha, MIPS, PowerPC
Successor
Windows Services for UNIX
Standard(s)
POSIX.1 standard (IEEE Std 1003.1-1990 / ISO/IEC 9945-1:1990)
Type
Compatibility layer
Microsoft POSIX subsystem is one of four subsystems shipped with the first versions of Windows NT, the other three being the Win32 subsystem which provided the primary API for Windows NT, plus the OS/2 and security subsystems.
This subsystem implements only the POSIX.1 standard – also known as IEEE Std 1003.1-1990 or ISO/IEC 9945-1:1990 – primarily covering the kernel and C library programming interfaces which allowed a program written for other POSIX.1-compliant operating systems to be compiled and run under Windows NT. The Windows NT POSIX subsystem did not provide the interactive user environment parts of POSIX, originally standardized as POSIX.2. That is, Windows NT did not provide a POSIX shell nor any Unix commands out of the box, except for pax. The NT POSIX subsystem also did not provide any of the POSIX extensions that postdated the creation of Windows NT 3.1, such as those for POSIX Threads or POSIX IPC.
The NT POSIX subsystem was included with the first versions of Windows NT because of 1980s US federal government requirements listed in Federal Information Processing Standard (FIPS) 151-2.[1] Briefly, these documents required that certain types of government purchases be POSIX-compliant, so that if Windows NT had not included this subsystem, computing systems based on it would not have been eligible for some government contracts. Windows NT versions 3.5, 3.51 and 4.0 were certified as compliant with FIPS 151-2.
The runtime environment of the subsystem is provided by two files: psxss.exe and psxdll.dll. A POSIX application uses psxdll.dll to communicate with the subsystem while communicating with posix.exe to provide display capabilities on the Windows desktop.
The POSIX subsystem was replaced in Windows XP and Windows Server 2003 by "Windows Services for UNIX",[2] (SFU) which is based in part on OpenBSD code and other technology developed by Interix, a company later purchased by Microsoft.[3][4][5][6] SFU was removed from later versions of Windows 8 and Windows Server 2012. SFU is logically, though not formally, replaced by the Windows Subsystem for Linux[7] (WSL) in the Windows 10 Anniversary Update and Windows Server 2016 Version 1709[8][9] respectively.
^"Federal Information Processing Standards Publication 151-2". Archived from the original on 2014-02-20. Retrieved 2008-09-03.
^"POSIX and OS/2 are not supported in Windows XP or in Windows Server 2003". Archived from the original on 2013-03-28.
^Dohnert, Roberto J. (2004-01-21), "Review of Windows Services for UNIX 3.5", OSNews, David Adams, archived from the original on 2008-02-11
^Reiter, Brian (2010-01-26). "WONTFIX: select(2) in SUA 5.2 ignores timeout". brianreiter.org.
^"Microsoft Acquires Softway Systems To Strengthen Future Customer Interoperability Solutions", Microsoft News Center, Microsoft, 1999-09-17
^"Milltech Consulting Inc". 2019.
^Hammons, Jack (22 April 2016). "Windows Subsystem for Linux Overview". Microsoft Developer Network (MSDN). Microsoft. Retrieved 21 December 2016.)
^Turner, Rich (9 August 2017). "WSL arrives on Windows Server!". Microsoft Developer Network (MSDN). Rich Turner of Microsoft. Retrieved 8 March 2018.
^Cooley, Sarah. "Install the Linux Subsystem on Windows Server". Microsoft Docs. Microsoft. Retrieved 8 March 2018.
and 23 Related for: Microsoft POSIX subsystem information
MicrosoftPOSIXsubsystem is one of four subsystems shipped with the first versions of Windows NT, the other three being the Win32 subsystem which provided...
counterparts. MicrosoftPOSIXsubsystem, an optional Windows subsystem included in Windows NT-based operating systems up to Windows 2000. It supported POSIX.1 as...
the MicrosoftPOSIXsubsystem that Interix replaced, it is best thought of as a distinct Unix-like platform. It is replaced by Windows Subsystem for Linux...
for UNIX, and a superset of the MicrosoftPOSIXsubsystem. Like the POSIXsubsystem, Interix was an environment subsystem for the NT kernel. It included...
three main environment subsystems: the Win32 subsystem, an OS/2 subsystem and a POSIXsubsystem. The Win32 environment subsystem can run 32-bit Windows...
the Home edition. Microsoft's first foray into achieving Unix-like compatibility on Windows began with the MicrosoftPOSIXSubsystem, superseded by Windows...
standardization effort now known as POSIX provided a common baseline for all operating systems; IEEE based POSIX around the common structure of the major...
DR-DOS and Microsoft Windows implementations also exist: within the SFU/SUA subsystem which provides a native implementation of a number of POSIX APIs, and...
available in its Windows 9x predecessor were removed, as were the POSIX and OS/2 subsystems. In networking, NetBEUI, NWLink and NetDDE were deprecated and...
and to an extent, Windows 2000. Microsoft decided to create a portable operating system, compatible with OS/2 and POSIX and supporting multiprocessing...
form of a C standard library that acts as a compatibility layer for the POSIX API. an extensive collection of software tools and applications that provide...
interface (API) that allows a computer program to access the features of the Microsoft Windows operating system in which the program is running. Each major version...
kernel tasks block, and whenever a subsystem explicitly calls the schedule() function. The kernel also contains two POSIX-compliant real-time scheduling classes...
by the POSIX.DLL dynamically loaded (shared) library. Programs linked with POSIX.DLL run under the Win32 subsystem instead of the POSIXsubsystem, so programs...
a digital copy of the POSIX standards documentation with a request to the comp.os.minix newsgroup. After not finding the POSIX documentation, Torvalds...
the aforementioned tools, some POSIX and OS/2 functionality can be used with the corresponding environmental subsystems of the Windows NT operating system...
is a free and open source software development environment to create Microsoft Windows applications. MinGW includes a port of the GNU Compiler Collection...
primarily in the Dynamic Link Library posix.dll. The environmental subsystems are one part of the strategy Microsoft developed for making the Windows NT...
additional capabilities of the Linux kernel exist that are not part of POSIX: cgroups subsystem, the system calls it introduces and libcgroup The system calls...
Daphne. ns-2 Cisco Packet Tracer Router Sim Cygwin: For Microsoft Windows, provides a POSIX environment and system libraries (contained in cygwin.dll)...
compatibility software running on Microsoft Windows, such as Cygwin and Subsystem for UNIX-based Applications, allow the use of POSIX interfaces. OpenVMS supports...
Python. Overview of POSIX message queues Win32 system message queues. "About Messages and Message Queues". Windows User Interface. Microsoft Developer Network...