Cygwin32: A Free Win32 Porting Layer for UNIXreg. Applications
Geoffrey J. Noer
Cygnus Solutions
Abstract
Cygwin32 is a full-featured Win32 porting layer for UNIX
applications, compatible with all Win32 hosts (currently Microsoft
Windows NT, Windows 95, and Windows 98). It was invented in 1995 by
Cygnus Solutions as part of the answer to the question of how to port
the GNU development tools to the Win32 host.
The Win32-hosted GNUPro compiler tools that use the library are
available for a variety of embedded processors as well as a native
version for writing Win32 programs. By basing this technology on the
GNU tools, Cygnus provides developers with a high-performance,
feature-rich 32-bit code development environment, including a
graphical source-level debugger.
Cygwin32 is a Dynamic-Linked Library (DLL) that provides a large
subset of the system calls found in common UNIX implementations. The
current release includes all POSIX.1/90 calls except for setuid and
mkfifo, all ANSI C standard calls, and many common BSD and SVR4
services including Berkeley sockets.
This article will discuss
our experiences porting the GNU development tools to the Win32 host
and explore the development and architecture of the Cygwin32
library.
- View the full text of this paper in
HTML form and
PDF form.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
- To become a USENIX Member, please see our Membership Information.