Chapter 1. Cygwin Overview

Table of Contents

What is it?
Quick Start Guide for those more experienced with Windows
Quick Start Guide for those more experienced with UNIX
Are the Cygwin tools free software?
A brief history of the Cygwin project
Highlights of Cygwin Functionality
Introduction
Permissions and Security
File Access
Text Mode vs. Binary Mode
ANSI C Library
Process Creation
Signals
Sockets
Select
What's new and what changed in Cygwin 1.7
What's new and what changed in 1.7.32
What's new and what changed from 1.7.30 to 1.7.31
What's new and what changed from 1.7.28 to 1.7.29
What's new and what changed from 1.7.27 to 1.7.28
What's new and what changed from 1.7.26 to 1.7.27
What's new and what changed from 1.7.25 to 1.7.26
What's new and what changed from 1.7.24 to 1.7.25
What's new and what changed from 1.7.23 to 1.7.24
What's new and what changed from 1.7.22 to 1.7.23
What's new and what changed from 1.7.21 to 1.7.22
What's new and what changed from 1.7.20 to 1.7.21
What's new and what changed from 1.7.18 to 1.7.19
What's new and what changed from 1.7.17 to 1.7.18
What's new and what changed from 1.7.16 to 1.7.17
What's new and what changed from 1.7.15 to 1.7.16
What's new and what changed from 1.7.14 to 1.7.15
What's new and what changed from 1.7.13 to 1.7.14
What's new and what changed from 1.7.12 to 1.7.13
What's new and what changed from 1.7.11 to 1.7.12
What's new and what changed from 1.7.10 to 1.7.11
What's new and what changed from 1.7.9 to 1.7.10
What's new and what changed from 1.7.8 to 1.7.9
What's new and what changed from 1.7.7 to 1.7.8
What's new and what changed from 1.7.6 to 1.7.7
What's new and what changed from 1.7.5 to 1.7.6
What's new and what changed from 1.7.3 to 1.7.5
What's new and what changed from 1.7.2 to 1.7.3
What's new and what changed from 1.7.1 to 1.7.2
OS related changes
File Access related changes
Network related changes
Device related changes
Other POSIX related changes
Security related changes
Miscellaneous

What is it?

Cygwin is a Linux-like environment for Windows. It consists of a DLL (cygwin1.dll), which acts as an emulation layer providing substantial POSIX (Portable Operating System Interface) system call functionality, and a collection of tools, which provide a Linux look and feel. The Cygwin DLL works with all x86 and AMD64 versions of Windows NT since Windows XP SP3. The API follows the Single Unix Specification as much as possible, and then Linux practice. The major differences between Cygwin and Linux is the C library (newlib instead of glibc).

With Cygwin installed, users have access to many standard UNIX utilities. They can be used from one of the provided shells such as bash or from the Windows Command Prompt. Additionally, programmers may write Win32 console or GUI applications that make use of the standard Microsoft Win32 API and/or the Cygwin API. As a result, it is possible to easily port many significant UNIX programs without the need for extensive changes to the source code. This includes configuring and building most of the available GNU software (including the development tools included with the Cygwin distribution).