Interix
Interix is the name of an optional, full-featured POSIX and Unix environment subsystem for Microsoft's Windows NT-based operating systems. It is a component of the Services for Unix (SFU) release 3.0 and 3.5 (this last one is distributed free). The most recent releases of Interix, 5.2 and 6.0, are components of the Windows Server 2003 R2 and Windows Vista distributions with the moniker "SUA" [1] (Subsystem for Unix-based Applications) [2].
Details
Like the Microsoft POSIX Subsystem in Windows NT, Interix is not an emulation of a Unix kernel. It is an implementation of an environment subsystem running in conjunction with the Windows kernel. The complete installation of Interix includes:
- Over 350 Unix utilities such as vi, ksh, csh, ls, cat, awk, grep, kill, etc.
- A complete set of manual pages for utilities and API's
- 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)
- Has Unix "root" capabilities (i.e. setuid files)
- Supports pthreads, shared libraries, DSO's, job control, signals, sockets, shared memory
The development environment includes support for C, C++ and Fortran. Threading is supported using the Pthreads model. Additional languages can be obtained from third parties (Python, Ruby, Tcl, etc.). The pkgsrc software packaging/build system was ported to work with Interix 3.5, and may work with newer versions (not yet tested).
Starting with release 5.2 the following capabilities were added[3]:
- "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 utilities can be optionally installed instead of the default BSD-based utilities
With release 6.0 the following new features are happening:
- IPv6 support
- significant update of utilities
- included only with Vista Ultimate and Enterprise (not other Vista editions)
- MSVC debugging plug-in now available
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. Interix was acquired by Microsoft in 1999. Microsoft continued to distribute Interix 2.2 as a standalone product until 2002. Interix release 3.0 was released as component of 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 component of the regular Windows OS distribution [4] as a component of Windows 2003 Server R2 in December, 2005 at release 5.2 and is a component of the Windows Vista release as release 6.0 (RTM November, 2006). The release of Windows Server 2008 will also contain Interix under the SUA component name (scheduled for release 2007).
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
- 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
- 2000-06 SFU 2.0 ja for WinNT 4.0(SP4+),5.0 i386
- 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 Subsystem for UNIX-based Applications (5.2)
- 2005-12-06 WinNT 5.2 R2
- Windows Vista Subsystem for UNIX-based Applications (6.0)
- 2006-11-08 WinNT 6.0 (2007-01-30)
See also
External links
- UNIX® Tools for Windows®; prepackaged application binaries from Interop Systems
- INTERIX™: UNIX® Application Portability to Windows NT™ via an Alternative Environment Subsystem PDF historical
- Interix: Unix for Microsoft Windows; third-party informational site
- Description from the Tcl-Wiki
- Latest SFU Blog