What if Microsoft shipped "Linux for Windows"?
On Friday, Microsoft released a free download of Windows Services
for Unix version 3.5, a significant upgrade to the Unix integration
product they've been offering for about 5 years. I've used it before,
mostly as an NFS client, but there's some remarkable changes this time
around.
The Services for Unix (SFU) are free to download and
consist of an entire Unix environment installed as a native subsystem
on Windows. For those of you who don't know your Windows
NT/2000/XP/2003 history, the NT kernel has always supported running
multiple subsystems, and NT has always shipped with a Posix-compliant
command-line subsystem, largely for checklist compatibility with some
now-obsolete government requirements. Unlike tools like Cygwin, which
run on top of the standard Windows shell, SFU implements the Interix
subsystem as a true peer to the Windows shell.
But to that base SFU 3.5 adds some extraordinary new
features. Both the Korn and C shells are included. A single rooted file
system is now supported, finally abandoning the need to include drive
paths in applications or scripts. And speaking of scripts, SFU includes
Perl 5.6.1. There's even the full complement of standard Unix
utilities, including awk, grep, sed, tr, cut, tar, cpio, less, at, cron
and batch. Essential applications like bind, sendmail and ftp? Present.
Even gcc, gdb, and make are in the package.
There's a lot of other stuff, of course, including the
first tools to expose Windows' long-dormant file system support for
junctions as symbolic links in the Interix environment. There's the
above-mentioned NFS support. There's all kinds of user account
synchronization features. A real version of telnet.