Cygwin ( is a free software package that provides a complete Linux/Unix-like environment inside a Windows PC environment. If you like Unix tools but need access to Windows software, you may find this preferable to buying a second computer or trying to manage a dual system, both of which involve learning to be a system administrator to some degree. Cygwin works by providing a DLL that emulates the functionality of Linux API. On top is this is layered ALL the standard Unix/Linux software, all for free.

The range of free software is enormous. Starting with your choice of a dozen different shells or support for gnome, archive support, editors including emacs, database software including Sleepycat and PostgreSQL, audio software, software development tools for C, C++, Java, PHP, C#, D, ADA, Fortran, Lisp, Prolog, BC, Perl, Python, Expect, and of course tools for writing your own compilers. There are graphics tools and software packages, email clients and servers, the apache web server and a full collection of web and internet clients and utilities, IRC, FTP, newsreaders, libraries ranging from ASCII art to complex math routines, publishing software including postscript tools and TeX, word-processing software, more utilities than you can shake a stick at, including cron for waking up and running backups and memory hogging tasks at ridiculous hours of the morning. Did we say free?

Cygwin provides a setup.exe file that not only makes downloading and installing the software you want a breeze, it also makes installing updates on your schedule, and software you later decide you want, just as easy. For software from other sources, Cygwin does not let you simply run an existing Unix or Linux tool, you have to recompile them in the Cygwin environment. With this one drawback, Cygwin may be exactly what you,re looking for.