Version 21 of Interix

Updated 2006-06-28 21:23:57

Interix (known as Microsoft SFU)

Introduction

SFU (Services for Unix, currently version 3.5) is an UNIX environment running as a Windows subsytem. (who knows more about how a subsystem works?) A subsystem is something like an embedded OS running on a Windows host. DOS, an other well known OS, is a subsystem as well. The SFU sub-system runs on top of the Windows kernel at the same level as the native Win32 sub-system, so it's not a virtual machine ro an emulation. A subsystem uses the resources of the host and add specific features to the resources provided by the host. SFU is a POSIX implementation providing all the well known interfaces mostly used in SW development on UNIX. Portions of SFU do not use the POSIX subsystem. For example, the top command is win32 and not POSIX. The socks API passes through to winsock, therefore is missing parts of BSD socks.

why use SFU?

  • SFU is POSIX, SFU is UNIX
  • you can compile, edit and run your source code like on every other UNIX OS
  • use your Unix know-how to write Windows software
  • use !!!one!!! source tree (proven by my own projects) to create Unix, Mac OS X and now Windows software
  • you can login with telnet or openssh, using your bash (and now tcl) to get your work done and finally use the already known Microsoft applications on your desk (even remote with "rdesktop")
  • save space and money for one additional workstation (on your table)
  • SFU fits very well into the Windows environment (no path-name-horror-trip with cygwin)
  • Admin a Windows system with Unix utilities

why not use SFU? (already known Windows limitations still exist)

  • no root user available (chosen restriction to link SFU into the windows user-management)
  • you can not create files like "odd\\[\*?\{\}name" (NTFS limitation)
  • a user started server can listen on low ports (security hole)
  • multiple servers can listen on the same port. The first one wins, but the second one does get !!no!! error-msg
  • FIFO speed is slow (~10 times slower than Linux)
  • application speed is high, filesystem access speed is medium
  • AEC 2005-09-09 I recently read Microsoft is going to stop developing SFU as an environment, but continue using it as a library for use with some of their server products. LV Actually, the code previously known as Interix or SFU has become bundled into the latest service pack for Windows 2003, and will also be included in the next generation of Windows. Read the various technical web sites from last August and September regarding Microsoft's plans. Note that the new abbreviation for this component is SUA.

Links to Tcl

  • Andreas Otto ported Tcl and a couple of extensions to SFU
  • TclBase is a collection of development tools available on Windows SFU, Unix and Mac OS X

Category Porting - Category Windows