Interix. Interix was an optional, POSIX-conformant Unix subsystem for Windows NT operating systems. Interix was a component of Windows Services for UNIX, and a superset of the Microsoft POSIX subsystem. Like the POSIX subsystem, Interix was an environment subsystem for the NT kernel. It included numerous open source utility software programs and libraries. Interix was originally developed and sold as OpenNT until purchased by Microsoft in 1999.

Interix versions 5.2 and 6.0 were respective components of Microsoft Windows Server 2003 R2, Windows Vista Enterprise, Windows Vista Ultimate, and Windows Server 2008 as Subsystem for Unix-based Applications (SUA). Version 6.1 was included in Windows 7 (Enterprise and Ultimate editions) but disabled by default, and in Windows Server 2008 R2 (all editions).
It was available as a deprecated separate download for Windows 8 and Windows Server 2012, and is not available at all on Windows 10.

Details
The complete installation of Interix included (at version 3.5):
 Over 350 Unix utilities such as vi, ksh, csh, ls, cat, awk, grep, kill, etc.
 A complete set of manual pages for utilities and APIs
 GCC 3.3 compiler, includes and libraries
 A cc/c89-like wrapper for Microsoft Visual Studio command-line C/C++ compiler
 GNU Debugger
 X11 client applications and libraries (no X server included, though third party servers were available)
 Has Unix "root" capabilities (i.e. setuid files)
 Has pthreads, shared libraries, DSOs, job control, signals, sockets, shared memory

The development environment included support for C, C++ and Fortran. Threading was supported using the Pthreads model.
Additional languages could be obtained (Python, Ruby, Tcl, etc.). Unix-based software packaging and build tools were available for installing or creating pre-build software packages.

Starting with release 5.2 (Server 2003/R2) the following capabilities were added:
 "Mixed mode" for linking Unix programs with Windows DLLs
 64-bit CPU support (in addition to 32-bit)
 Large file system support on 64-bit systems
 System V R4 utilities can be optionally installed instead of the default BSD-based utilities
 MSVC debugging plug-in
 Database (OCI/ODBC) library connectivity

With release 6.0 (Vista and Server 2008) the following new features were added:
 IPv6 support for socket APIs and daemons
 Updates to utilities for additional functionality
 MSVC debugging plug-in enhanced

Interix release 6.0 for Vista was only available with the Ultimate and Enterprise editions.

Interix release 6.1 was available for Windows Server 2008 R2 and Windows 7 for the Enterprise and Ultimate editions.

Support
Traditional support was provided by Microsoft for a fee or service contract, though released hotfixes can usually be obtained free of charge from Microsoft. Previously, free support could be found via the forums at the SUA Community site and with the FAQ, however this appears to have been withdrawn.

Additions
Additional pre-built applications and development libraries could be obtained for free from the SUA Community site, the Gentoo-prefix site and the Debian-Interix site. These included commonly used applications not part of the Microsoft installation such as OpenSSH, Git, Python and bash.

The SUA Community site included for developers of Interix and the site has been contracted by Microsoft for several Interix and SUA updates of utilities and documentation.

History
This product began to be developed in 1996 under the product name OpenNT by Softway Systems, Inc. before the name was changed to Interix in 1998. The last release by Softway Systems was release 2.2. Softway Systems had virtually completed the next release code-named Firebrand in 1999 which became the basis of Interix 3.0.

The Interix interoperability suite developed by Softway Systems Inc., included substantial code from OpenBSD,. Microsoft acquired Interix in 1999.

Microsoft continued to distribute Interix 2.2 as a standalone product until 2002.

Interix release 3.0 was released as component of Windows Services for Unix (SFU) 3.0 in 2002. Interix release 3.5 was released as component of SFU 3.5 in January, 2004.

Interix became integrated as a component of the regular Windows OS distribution as a component of Windows Server 2003 R2 in December, 2005 at release 5.2 and was a component of the Windows Vista release as release 6.0 (RTM November, 2006). Windows Server 2008 had release 6.0. Windows 7 and Windows Server 2008 R2 included SUA 6.1.

Microsoft announced in 2011 that Interix would not be included in Windows versions after Windows 8 and customers should start migrating their applications to an alternative solution.

Releases
 OpenNT Commands & Utilities, Release 1.0 (1.0)
 1996-03-29 OpenNT Commands & Utilities, Release 1.0 for WinNT POSIX Subsystem
 1996-07 X11R6 Server (Win32)
 1996-08 telnetd (and inetd)
 OpenNT 1.1 and SDK (1.1)
 1996-09 OpenNT 1.1 and SDK for WinNT i386, alpha
 OpenNT 2.0 (2.0)
 1997-05 OpenNT 2.0 (Apache httpd and xv) for WinNT i386, alpha
 1997-08-12 "OpenNT: UNIX Application Portability to Windows NT via an Alternative Environment Subsystem" Usenix paper
 1997-08-12 "OpenNT: UNIX Application Portability to Windows NT" Usenix presentation (again 1998-06)
 1997-11 "inetd and telnetd on Windows NT with OpenNT"
 OpenNT 2.1 (2.1)
 1997-12 OpenNT 2.1 for WinNT i386, alpha
 1998-01 OpenNT 2.1
 1998-02 "Technical Note #9: inetd and the Daemon Package"
 1998-spring paper update
 1998-06 Interix 2.1 rebranding
 Interix 2.2 (2.2)
 1998-06 Interix 2.2(.0)?
 1999-02 SFU 1.0 en for WinNT 4.0(SP3+) i386, alpha (does not contain Interix; included for historical purposes with MS acquisition)
 1999-09-17 Acquired by Microsoft
 1999-12 Interix 2.2(.0) for WinNT 3.51(SP5+),4.0(SP3+),5.0
 Interix 2.2 Service Pack 1 (2.2.4)
 Interix 2.2.5 (2.2.5)
 2000-02 Interix 2.2.5 for WinNT 4.0(SP5+),5.0
 2000-04 SFU 2.0 en for WinNT 4.0(SP4+),5.0 i386 (does not contain Interix; included for historical purposes with MS acquisition)
 2000-06 SFU 2.0 ja for WinNT 4.0(SP4+),5.0 i386 (does not contain Interix; included for historical purposes with MS acquisition)
 2001-06-30 "Strangely Enough It All Turns Out Well" Usenix talk
 Microsoft Windows Services for UNIX 3.0 (3.0)
 2002-05 SFU 3.0 en for WinNT 4.0(SP6a+),5.0,5.1 i386
 Interix 3.0 (AKA Firebrand)
 2002-10 SFU 3.0 ja for WinNT 4.0(SP6a+),5.0,5.1 i386
 Microsoft Windows Services for UNIX 3.5 (3.5)
 2004-01 SFU 3.5 en, ja for WinNT 5.0,5.1,5.2 i386
 Windows Server 2003 R2 (all editions) Subsystem for UNIX-based Applications (5.2)
 2005-12-06 WinNT 5.2 R2
 Windows Vista (Ultimate and Enterprise editions) Subsystem for UNIX-based Applications (6.0)
 2006-11-08 WinNT 6.0 (2007-01-30)
 Windows Server 2008 (all editions) Subsystem for UNIX-based Applications (6.0)
 2008-02-04 WinNT 6.0
 Subsystem for UNIX-based Applications in Microsoft Windows 7 and Windows Server 2008 R2 (6.1)
 2010-03-11 WinNT 6.1

See also

 Windows Subsystem for Linux
 Xming
 MKS Toolkit
 UnxUtils
 UWIN
 GnuWin32
 GNUWin II
 Cygwin
 MinGW
 DJGPP

References

Further reading

External links
 Services for UNIX - Interoperability: A blog on Services for UNIX and UNIX Interoperability components in Windows by Ashish (official blog, MSDN)
 INTERIX: UNIX Application Portability to Windows NT via an Alternative Environment Subsystem PDF historical
 HOW TO: Install Interix (KB 324081 for Windows NT4/5 up to XP)
 Description from the Tcl-Wiki
 Debian-Interix Port; Debian based applications for Interix/SUA
 Gentoo Prefix Port  Gentoo based port of many applications
 LBW: Linux Binaries on Windows, an Interix-based Linux system call translator for Windows

Compatibility layers
Unix emulators
Unix history
Windows components