Cygwin is a Unix-like environment and command-line
interface for Microsoft Windows. Cygwin provides native integration of
Windows-based applications, data,
and other system resources with applications, software tools, and data
of the Unix-like environment.
Cygwin is a dynamic link library (DLL) that acts as a
Linux API emulation layer. Included with Cygwin is Cygwin/X, an
implementation of the X Windows System. This can either run 'rootless',
X applications draw their windows directly on the Windows desktop, or
applications run enclosed under a root window. These
applications can either be executed on the local machine, or connected
to a remote computer.
It is important to recognise the limitations of Cygwin.
This software is not a way to make native Linux applications run under
Windows. Instead each Linux application has to be compiled to run
under Windows, which is not trivial for a typical user to do.
Software is installed by a setup.exe tool, available to
download from cygwin's web site. Whilst this tool provides a convenient
graphical interface to install the various sofware linux packages that
have been ported to the
environment, it isn't the most seamless installation, especially if
you want to install an X server, which has not been included in the
Many Unix programs have been ported to Cygwin, including
desktop environments such as KDE and GNOME, web servers, typesetting
systems and more. The software also enables servers and
daemons to be run as standard Windows services, allowing XP and Vista
machines to emulate Linux servers.
The above screenshot shows Vi IMproved (a famous text editor) running
under the standard console window.
When the X server is started successfully, the X logo is
displayed in the task bar of your Windows desktop, and graphical
applications are therefore able to run.
The above screenshots show LyX (a document processor) and Xpdf (a
viewer for Portable Document Format (PDF) files) running under
There is a lot to like about Cygwin. It is very
lightweight, takes up very little memory, and is quite stable.
Performance too is
pretty respectable. However, its biggest obstacle is that the vast
majority of Linux applications have not been ported over, and the ones
that have are not the latest versions.
Page: Final Thoughts
- Supports native application building using mingw
- Supports remote logins using rsh, ssh, and telnet
- Embedded cross platforms support, used for many
platforms including PSP and PS2
- X Window
and OpenGL support
- Windows Vista support