Interix was an optional,
POSIX
The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines both the system- and user-level application programming in ...
-conformant
Unix
Unix (; trademarked as UNIX) is a family of multitasking, multiuser computer operating systems that derive from the original AT&T Unix, whose development started in 1969 at the Bell Labs research center by Ken Thompson, Dennis Ritchie, ...
subsystem for
Windows NT
Windows NT is a proprietary graphical operating system produced by Microsoft, the first version of which was released on July 27, 1993. It is a processor-independent, multiprocessing and multi-user operating system.
The first version of Win ...
operating system
An operating system (OS) is system software that manages computer hardware, software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ef ...
s. Interix was a component of
Windows Services for UNIX
Windows Services for UNIX (SFU) is a discontinued software package produced by Microsoft which provided a Unix environment on Windows NT and some of its immediate successor operating-systems.
SFU 1.0 and 2.0 used the MKS Toolkit; starting wi ...
, and a superset of the
Microsoft POSIX subsystem
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 ...
. Like the POSIX subsystem, Interix was an
environment subsystem for the
NT kernel. It included numerous
open source
Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product. The open-source model is a decentralized so ...
utility software
Utility software is software designed to help analyze, configure, optimize or maintain a computer. It is used to support the computer infrastructure - in contrast to application software, which is aimed at directly performing tasks that benefit or ...
programs and
libraries
A library is a collection of Document, materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or electronic media, digital access (soft copies) materials, and may be a ...
. 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
Windows Vista—a major release of the Microsoft Windows operating system—was available in six different product editions: Starter, Home Basic, Home Premium, Business, Enterprise, and Ultimate. On September 5, 2006, Microsoft announced the USD ...
, and
Windows Server 2008
Windows Server 2008 is the fourth release of the Windows Server operating system produced by Microsoft as part of the Windows NT family of the operating systems. It was released to manufacturing on February 4, 2008, and generally to retail on F ...
as Subsystem for Unix-based Applications (SUA). Version 6.1 was included in
Windows 7
Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
(Enterprise and Ultimate editions) but disabled by default, and in
Windows Server 2008 R2
Windows Server 2008 R2 is the fifth version of the Windows Server operating system produced by Microsoft and released as part of the Windows NT family of operating systems. It was released to manufacturing on July 22, 2009, and became generall ...
(all editions).
It was available as a deprecated separate download for
Windows 8
Windows 8 is a major release of the Windows NT operating system developed by Microsoft. It was released to manufacturing on August 1, 2012; it was subsequently made available for download via MSDN and TechNet on August 15, 2012, and later to ...
and
Windows Server 2012
Windows Server 2012, codenamed "Windows Server 8", is the sixth version of the Windows Server operating system by Microsoft, as part of the Windows NT family of operating systems. It is the server version of Windows based on Windows 8 and succe ...
, and is not available at all on
Windows 10
Windows 10 is a major release of Microsoft's Windows NT operating system. It is the direct successor to Windows 8.1, which was released nearly two years earlier. It was released to manufacturing on July 15, 2015, and later to retail on ...
.
Details
The complete installation of Interix included (at version 3.5):
* Over 350
Unix utilities such as
vi,
ksh,
csh,
ls,
cat
The cat (''Felis catus'') is a domestic species of small carnivorous mammal. It is the only domesticated species in the family Felidae and is commonly referred to as the domestic cat or house cat to distinguish it from the wild members of ...
,
awk,
grep
grep is a command-line utility for searching plain-text data sets for lines that match a regular expression. Its name comes from the ed command ''g/re/p'' (''globally search for a regular expression and print matching lines''), which has the sa ...
,
kill
Kill often refers to:
*Homicide, one human killing another
*cause death, to kill a living organism, to cause its death
Kill may also refer to:
Media
*'' Kill!'', a 1968 film directed by Kihachi Okamoto
* ''Kill'' (Cannibal Corpse album), 2006
* ...
, etc.
* A complete set of
manual pages for utilities and APIs
*
GCC 3.3 compiler,
includes and
libraries
A library is a collection of Document, materials, books or media that are accessible for use and not just for display purposes. A library provides physical (hard copies) or electronic media, digital access (soft copies) materials, and may be a ...
* A cc/c89-like wrapper for
Microsoft Visual Studio
Visual Studio is an integrated development environment (IDE) from Microsoft. It is used to develop computer programs including websites, web apps, web services and mobile apps. Visual Studio uses Microsoft software development platforms such ...
command-line C/C++ compiler
*
GNU Debugger
The GNU Debugger (GDB) is a portable debugger that runs on many Unix-like systems and works for many programming languages, including Ada, C, C++, Objective-C, Free Pascal, Fortran, Go, and partially others.
History
GDB was first written ...
*
X11
The X Window System (X11, or simply X) is a windowing system for bitmap displays, common on Unix-like operating systems.
X provides the basic framework for a GUI environment: drawing and moving windows on the display device and interacting wi ...
client applications and libraries (no X server included, though third party servers were available)
* Has Unix "
root
In vascular plants, the roots are the organs of a plant that are modified to provide anchorage for the plant and take in water and nutrients into the plant body, which allows plants to grow taller and faster. They are most often below the su ...
" capabilities (i.e.
setuid
The Unix access rights flags setuid and setgid (short for ''set user identity'' and ''set group identity'') allow users to run an executable with the file system permissions of the executable's owner or group respectively and to change behaviour ...
files)
* Has
pthreads
POSIX Threads, commonly known as pthreads, is an execution model that exists independently from a language, as well as a parallel execution model. It allows a program to control multiple different flows of work that overlap in time. Each flow o ...
,
shared libraries
In computer science, a library is a collection of non-volatile resources used by computer programs, often for software development. These may include configuration data, documentation, help data, message templates, pre-written code and ...
,
DSOs,
job control,
signals,
sockets,
shared memory
In computer science, shared memory is memory that may be simultaneously accessed by multiple programs with an intent to provide communication among them or avoid redundant copies. Shared memory is an efficient means of passing data between progr ...
The development environment included support for
C,
C++
C++ (pronounced "C plus plus") is a high-level general-purpose programming language created by Danish computer scientist Bjarne Stroustrup as an extension of the C programming language, or "C with Classes". The language has expanded significan ...
and
Fortran. Threading was supported using the Pthreads model.
Additional languages could be obtained (
Python,
Ruby
A ruby is a pinkish red to blood-red colored gemstone, a variety of the mineral corundum ( aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called ...
,
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
In computer architecture, 64-bit integers, memory addresses, or other data units are those that are 64 bits wide. Also, 64-bit CPUs and ALUs are those that are based on processor registers, address buses, or data buses of that size. A ...
CPU support (in addition to 32-bit)
* Large file system support on 64-bit systems
*
System V
Unix System V (pronounced: "System Five") is one of the first commercial versions of the Unix operating system. It was originally developed by AT&T and first released in 1983. Four major versions of System V were released, numbered 1, 2, 3, an ...
R4 utilities can be optionally installed instead of the default
BSD-based utilities
*
MSVC
Microsoft Visual C++ (MSVC) is a compiler for the C, C++ and C++/CX programming languages by Microsoft. MSVC is proprietary software; it was originally a standalone product but later became a part of Visual Studio and made available in both ...
debugging plug-in
* Database (OCI/
ODBC
In computing, Open Database Connectivity (ODBC) is a standard application programming interface (API) for accessing database management systems (DBMS). The designers of ODBC aimed to make it independent of database systems and operating systems. An ...
) library connectivity
With release 6.0 (Vista and Server 2008) the following new features were added:
*
IPv6
Internet Protocol version 6 (IPv6) is the most recent version of the Internet Protocol (IP), the communications protocol that provides an identification and location system for computers on networks and routes traffic across the Internet. I ...
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
Ultimate or Ultimates may refer to:
Arts, entertainment, and media Music Albums
* ''Ultimate'' (Jolin Tsai album)
* ''Ultimate'' (Pet Shop Boys album)
*'' Ultimate!'', an album by The Yardbirds
*'' The Ultimate (Bryan Adams Album)'', a compilat ...
and
Enterprise
Enterprise (or the archaic spelling Enterprize) may refer to:
Business and economics
Brands and enterprises
* Enterprise GP Holdings, an energy holding company
* Enterprise plc, a UK civil engineering and maintenance company
* Enterprise ...
editions.
Interix release 6.1 was available for
Windows Server 2008 R2
Windows Server 2008 R2 is the fifth version of the Windows Server operating system produced by Microsoft and released as part of the Windows NT family of operating systems. It was released to manufacturing on July 22, 2009, and became generall ...
and
Windows 7
Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
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 th
SUA Communitysite, th
Gentoo-prefixsite and th
Debian-Interixsite. These included commonly used applications not part of the Microsoft installation such as
OpenSSH
OpenSSH (also known as OpenBSD Secure Shell) is a suite of secure networking utilities based on the Secure Shell (SSH) protocol, which provides a secure channel over an unsecured network in a client–server architecture.
Network Working Gro ...
,
Git
Git () is a distributed version control system: tracking changes in any set of files, usually used for coordinating work among programmers collaboratively developing source code during software development. Its goals include speed, data in ...
,
Python and
bash
Bash or BASH may refer to:
Arts and entertainment
* ''Bash!'' (Rockapella album), 1992
* ''Bash!'' (Dave Bailey album), 1961
* '' Bash: Latter-Day Plays'', a dramatic triptych
* ''BASH!'' (role-playing game), a 2005 superhero game
* "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
OpenBSD is a security-focused, free and open-source, Unix-like operating system based on the Berkeley Software Distribution (BSD). Theo de Raadt created OpenBSD in 1995 by forking NetBSD 1.0. According to the website, the OpenBSD project e ...
,.
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
Windows Services for UNIX (SFU) is a discontinued software package produced by Microsoft which provided a Unix environment on Windows NT and some of its immediate successor operating-systems.
SFU 1.0 and 2.0 used the MKS Toolkit; starting wi ...
(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
Windows Server 2003 is the sixth version of Windows Server operating system produced by Microsoft. It is part of the Windows NT family of operating systems and was released to manufacturing on March 28, 2003 and generally available on April ...
in December, 2005 at release 5.2 and was a component of the
Windows Vista
Windows Vista is a major release of the Windows NT operating system developed by Microsoft. It was the direct successor to Windows XP, which was released five years before, at the time being the longest time span between successive releases of ...
release as release 6.0 (RTM November, 2006).
Windows Server 2008
Windows Server 2008 is the fourth release of the Windows Server operating system produced by Microsoft as part of the Windows NT family of the operating systems. It was released to manufacturing on February 4, 2008, and generally to retail on F ...
had release 6.0.
Windows 7
Windows 7 is a major release of the Windows NT operating system developed by Microsoft. It was Software release life cycle#Release to manufacturing (RTM), released to manufacturing on July 22, 2009, and became generally available on October 22, ...
and
Windows Server 2008 R2
Windows Server 2008 R2 is the fifth version of the Windows Server operating system produced by Microsoft and released as part of the Windows NT family of operating systems. It was released to manufacturing on July 22, 2009, and became generall ...
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
MKS Toolkit is a software package produced and maintained by PTC that provides a Unix-like environment for scripting, connectivity and porting Unix and Linux software to Microsoft Windows. It was originally created for MS-DOS, and OS/2 versi ...
*
UnxUtils
UnxUtils is a collection of ports of common GNU Unix-like utilities to native Win32, with executables only depending on the Microsoft C- runtime msvcrt.dll. The collection was last updated externally on April 15, 2003, by Karl M. Syring. The mo ...
*
UWIN
*
GnuWin32
The G''nu''W''in''32 project provides native ports in the form of executable computer programs, patches, and source code for various GNU and open source tools and software, much of it modified to run on the 32-bit Windows platform. The ports inc ...
*
GNUWin II
*
Cygwin
Cygwin ( ) is a POSIX-compatible programming and runtime environment that runs natively on Microsoft Windows. Under Cygwin, source code designed for Unix-like operating systems may be compiled with minimal modification and executed.
The Cygwin in ...
*
MinGW
MinGW ("Minimalist GNU for Windows"), formerly mingw32, is a free and open source software development environment to create Microsoft Windows applications.
MinGW includes a port of the GNU Compiler Collection (GCC), GNU Binutils for Windows ...
*
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 SubsystemPDF historical
HOW TO: Install Interix(KB 324081 for Windows NT4/5 up to XP)
Description from the Tcl-WikiDebian-Interix Port Debian based applications for Interix/SUA
Gentoo Prefix PortGentoo based port of many applications
LBW: Linux Binaries on Windows an Interix-based Linux system call translator for Windows
{{Unix-Windows interoperability
Compatibility layers
Unix emulators
Unix history
Windows components