Cygwin consists of a collection of various tools and libraries aimed to provide a Linux-like environment on Windows Operating System. It acts as an emulation layer, making it possible to run native Linux applications on Microsoft Windows.
Originally developed by Cygnus Solutions, but acquired in 2000 by Red Hat, Cygwin is mostly bent on providing programmers with a simple way to provide Windows compatibility for applications that were originally developed for Linux environments. A few examples of Unix applications ported successfully are KDE, GNOME and Apache.
Cygwin consists of a DLL whose purpose is to provide POSIX API functionality and a collection of utilities that are able to accommodate the Unix look and feel on Windows computers. Components such as syslogd, inetd, crond and several such daemons are deployed as services, thus making it possible for Windows to behave in a Linux manner.
Being such a complex application, a sophisticated installation is expected. Deployment requires several user interventions, as well as a working Internet connection for downloading files from dedicated servers.
Users are advised to pay attention to the packages they select during setup; the more components, the longer the installation process. By default, the selection is minimal and includes only the bash shell, as well as core utilities, which are common in Unix command line.
Other components, such as terminals (mintty, util-linux), text utilities (grep, diff, patch), shells (dash, zsh, tcsh), servers (Apache, PostgreSQL, OpenSSH) and other development-related utilities are available in optional packages.
However, the default selection should be enough for compiling source code in order to produce GUI or console applications that are compatible with Windows. After all, the beauty of Cygwin comes from the fact that developers need not make extensive changes to the code, but few adjustments and additions.
What's New in This Release:
· For performance reasons, Cygwin does not try to create sparse files
· automatically anymore, unless you use the new "sparse" mount option.
Added Windows console cursor appearance support:
· Show/Hide Cursor mode (DECTCEM): "ESC[?25h" / "ESC[?25l"
· Set cursor style (DECSCUSR): "ESC[n q" (note the space before the q);
· where n is 0, 1, 2 for block cursor, 3, 4 for underline cursor (all
· disregarding blinking mode), or > 4 to set the cursor height to a
· percentage of the cell height.
· New API: cfsetspeed.
· Changes in cygwin1.dll and gdb-7.5.50-2 now allow gdb to recognize Cygwin-specific signals like "SIGTERM" as well as Windows signals like "SIGSEGV". This feature is still experimental.
Bug fixes:
· Fix handle leak in rewinddir(3). This affected Windows 2000 only.
· Allow quoted filenames in @ argument expression when called from native
· processes.
· Fix a bug in initializing the stdio settings at process startup, which
· could result in missing output.
· rename("dir1", "dir2") could result in deleting...