FACTOID # 146: About one-quarter of all nations drive on the left-hand-side of the road. Most of them are former British colonies.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
 
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "Cygwin" also viewed:
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Cygwin
Cygwin

Running Cygwin under Windows XP
Developer: Red Hat and others
Latest release: 1.5.24-2 / 31 January 2007
OS: Microsoft Windows
Genre: Emulator
License: GNU General Public License
Website: http://www.cygwin.com/

Cygwin (pronounced /ˈsɪgwɪn/) is a collection of free software tools originally developed by Cygnus Solutions to allow various versions of Microsoft Windows to act similar to a Unix system. It aims mainly at porting software that runs on POSIX systems (such as Linux, BSD, and Unix systems) to run on Windows with little more than a recompilation. Programs ported with Cygwin work better on Windows NT, but some may run acceptably on Windows 9x. While Cygwin provides header files and libraries that make it easier to recompile or port Unix applications for use on Windows, it does not directly make Unix binaries compatible with Windows (or vice versa). Image File history File links Download high resolution version (1023x738, 55 KB) Screenshot of Cygwin - selfmade under showing: 2 open Cygwin bash-consoles under WinXP (one is running a Midnight-Commander session) X11-Server in rootless-mode remote GUI-app (xclock) (tunneled over SSH via putty) software-licenses Putty: MIT... Windows XP is a line of operating systems developed by Microsoft for use on general-purpose computer systems, including home and business desktops, notebook computers, and media centers. ... Software development is the translation of a user need or marketing goal into a software product. ... Red Hat, Inc. ... A software release is the distribution, whether public or private, of an initial or new and upgraded version of a computer software product. ... is the 31st day of the year in the Gregorian calendar. ... Year 2007 (MMVII) is the current year, a common year starting on Monday of the Gregorian calendar and the AD/CE era. ... // An operating system (OS) is a set of computer programs that manage the hardware and software resources of a computer. ... Microsoft Windows is the name of several families of proprietary software operating systems by Microsoft. ... Computer software can be organized into categories based on common function, type, or field of use. ... DosBox emulates the familiar command line interface of DOS. An emulator duplicates (provide an emulation of) the functions of one system with a different system, so that the second system behaves like (and appears to be) the first system. ... A software license is a legal agreement which may take the form of a proprietary or gratuitous license as well as a memorandum of contract between a producer and a user of computer software. ... The GNU logo The GNU General Public License (GNU GPL or simply GPL) is a widely-used free software license, originally written by Richard Stallman for the GNU project. ... A website (alternatively, Web site or web site) is a collection of Web pages, images, videos and other digital assets that is hosted on a Web server, usually accessible via the Internet or a LAN. A Web page is a document, typically written in HTML, that is almost always accessible... This chart shows concisely the most common way in which the International Phonetic Alphabet (IPA) is applied to represent the English language. ... Clockwise from top: The logo of the GNU Project (the GNU head), the Linux kernel mascot Tux the Penguin, and the FreeBSD daemon Free software is a term coined by Richard Stallman and the Free Software Foundation[1] to refer to software that can be used, studied, and modified without... Cygnus Solutions, originally Cygnus Support, was founded in 1989 by John Gilmore, Michael Tiemann and David Henkel-Wallace to provide commercial support for free software. ... Microsoft Windows is the name of several families of proprietary software operating systems by Microsoft. ... Filiation of Unix and Unix-like systems Unix (officially trademarked as UNIX®) is a computer operating system originally developed in the 1960s and 1970s by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy. ... In computer science, porting is the process of adapting software so that an executable program can be created for a computing environment that is different from the one for which it was originally designed (e. ... POSIX or Portable Operating System Interface[1] is the collective name of a family of related standards specified by the IEEE to define the application programming interface (API) for software compatible with variants of the Unix operating system. ... Linux (IPA pronunciation: ) is a Unix-like computer operating system. ... Berkeley Software Distribution (BSD, sometimes called Berkeley Unix) is the Unix derivative distributed by the University of California, Berkeley, starting in the 1970s. ... Filiation of Unix and Unix-like systems Unix (officially trademarked as UNIX®) is a computer operating system originally developed in the 1960s and 1970s by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy. ... Windows NT is a family of operating systems produced by Microsoft, the first version of which was released in July 1993. ... Windows 9x is a term used to describe the DOS-based operating systems Windows 95 and Windows 98, similar versions of Microsoft Windows which were produced in the 1990s. ...


Cygwin is currently maintained by employees of Red Hat, NetApp and others. Released under the GNU General Public License, Cygwin is free software. Red Hat, Inc. ... Network Appliance, Inc. ... The GNU logo The GNU General Public License (GNU GPL or simply GPL) is a widely-used free software license, originally written by Richard Stallman for the GNU project. ... Clockwise from top: The logo of the GNU Project (the GNU head), the Linux kernel mascot Tux the Penguin, and the FreeBSD daemon Free software is a term coined by Richard Stallman and the Free Software Foundation[1] to refer to software that can be used, studied, and modified without...

Contents

Description

Cygwin consists of a library that implements the POSIX system call API in terms of Win32 system calls, a GNU development toolchain (such as GCC and GDB) to allow basic software development tasks, and a large number of application programs equivalent to common programs on the Unix system. At this point, many open-source programs on Unix have been ported to Cygwin, including the X Window System, KDE, Gnome, Apache, TeX, and various others. A mechanism has been created for installing inetd, syslogd, sshd, Apache and other daemons as standard Windows services, allowing a Microsoft Windows system to function much like a Unix or Linux server. All of these programs are installed through the standard Cygwin setup program, which downloads the necessary packages from the Internet. The setup program can be rerun as necessary to update programs to their latest versions or add or remove programs. (Various other features are provided by setup, such as the ability to install the source code along with the binaries.) POSIX or Portable Operating System Interface[1] is the collective name of a family of related standards specified by the IEEE to define the application programming interface (API) for software compatible with variants of the Unix operating system. ... An application programming interface (API) is a source code interface that a computer system or program library provides to support requests for services to be made of it by a Length. ... Windows API is a set of APIs, (application programming interfaces) available in the Microsoft Windows operating systems. ... GNU (pronounced ) is a computer operating system composed entirely of free software. ... The GNU Compiler Collection (usually shortened to GCC) is a set of programming language compilers produced by the GNU Project. ... The GNU Debugger, usually called just GDB, is the standard debugger for the GNU software system. ... // Open Source is a set of principles and practices that promote access to the design and production of goods and knowledge. ... KDE 3. ... KDE (K Desktop Environment) (IPA: ) is a free software project which aims to be a powerful system for an easy-to-use desktop environment. ... This article needs additional references or sources for verification. ... The Apache HTTP Server, commonly referred to simply as Apache, is a web server notable for playing a key role in the initial growth of the World Wide Web. ... TeX (IPA: as in Greek, often in English; written with a lowercase e in imitation of the logo) is a typesetting system created by Donald Knuth. ... inetd is a daemon on many Unix systems that manages Internet services. ... syslog is a standard for forwarding log messages in an IP network. ... To meet Wikipedias quality standards, this article or section may require cleanup. ... The Apache HTTP Server, commonly referred to simply as Apache, is a web server notable for playing a key role in the initial growth of the World Wide Web. ... Filiation of Unix and Unix-like systems Unix (officially trademarked as UNIX®) is a computer operating system originally developed in the 1960s and 1970s by a group of AT&T employees at Bell Labs including Ken Thompson, Dennis Ritchie and Douglas McIlroy. ... Linux (IPA pronunciation: ) is a Unix-like computer operating system. ...


A large amount of effort has gone into providing interfaces to map between concepts that differ between Unix and Windows. Examples include:

  • A Cygwin-specific version of Unix mount has been created, which allows arbitrary Windows paths to be mounted as "filesystems" into the Unix file space. Mount information is normally stored in the registry. Filesystems can be mounted as binary (the default) or as text, which performs automatic conversion between LF and CRLF endings. (This only affects programs that call open() or fopen() without specifying text or binary mode. All of the ported Unix programs available through Cygwin setup open files in binary mode if appropriate, and hence data corruption will not occur.) All DOS drives (C:, D:, etc.) are also available under /cygdrive/c, /cygdrive/d, etc. Windows network paths of the form HOSTSHAREFILE are mapped to //HOST/SHARE/FILE.
  • Full-featured /dev and /proc file systems are provided automatically. /proc/registry provides direct filesystem access to the registry.
  • Symbolic links are provided, and use .LNK files (Windows shortcuts), with some special Cygwin-specific info in them and the "system" attribute set to speed up processing.
  • Special formats of /etc/passwd and /etc/group are provided that include pointers to the Windows equivalent SID's (in the GECOS field), allowing for mapping between Unix and Windows users and groups.
  • Various utilities are provided for converting between Windows and Unix file formats, for handling line ending (CRLF/LF) issues, for displaying the DLLs that an executable is linked with, etc.
  • Cygwin library also interfaces to existing windows library. It is possible to call windows functions like waveOut from cygwin executable itself.

The version of gcc that comes with Cygwin has various extensions for creating Windows DLLs, specifying whether a program is a windowing or console mode program, adding resources, etc. It also provides support for compiling MinGW-compatible executables (that is, executables that do not require Cygwin to be installed to run, or more specifically, executables that don't require Cygwin's CYGWIN1.DLL, which provides the POSIX compatibility layer). Mounting, in computer science, is the process of making a file system ready for use by the operating system, typically by reading certain index data structures from storage into memory ahead of time. ... In computing, a newline is a special character or sequence of characters signifying the end of a line of text. ... Solaris is a computer operating system developed by Sun Microsystems. ... In computer security, an access control list (ACL) is a list of permissions attached to an object. ... The GNU Compiler Collection (usually shortened to GCC) is a set of programming language compilers produced by the GNU Project. ... MinGW or Mingw32 (Minimalist GNU for Windows) is a software port of the GNU toolchain to the Win32 platform. ...


Cygwin is used heavily for many popular software for porting on windows platform. It is used to compile Mozilla Firefox, Sun Java and OpenOffice.org. Mozilla Firefox is a graphical web browser developed by the Mozilla Corporation and a large community of external contributors. ... Sun Microsystems, Inc. ... Java is a programming language originally developed by Sun Microsystems and released in 1995. ... OpenOffice. ...


Red Hat normally licenses the Cygwin library under the GNU General Public License with an exception to allow linking to any free software whose license conforms to the Open Source Definition. (Red Hat also sells commercial licenses to those who wish to redistribute programs that use the Cygwin library under proprietary terms.) The GNU logo The GNU General Public License (GNU GPL or simply GPL) is a widely-used free software license, originally written by Richard Stallman for the GNU project. ... Clockwise from top: The logo of the GNU Project (the GNU head), the Linux kernel mascot Tux the Penguin, and the FreeBSD daemon Free software is a term coined by Richard Stallman and the Free Software Foundation[1] to refer to software that can be used, studied, and modified without... The Open Source Definition is used by the Open Source Initiative to determine whether or not a software license can be considered open source. ... Proprietary software is software with restrictions on using, copying and modifying as enforced by the proprietor. ...


History

Cygwin began in 1995 as a project of Steve Chamberlain, a Cygnus engineer who observed that Windows NT and 95 used COFF as their object file format, and that GNU already included support for x86 and COFF, and the C library newlib; so at least in theory it should not be difficult to retarget GCC and get a cross compiler producing executables that would run on Windows. This proved to be so in practice, and a prototype came up quickly. Year 1995 (MCMXCV) was a common year starting on Sunday (link will display full 1995 Gregorian calendar). ... Cygnus Solutions, originally Cygnus Support, was founded in 1989 by John Gilmore, Michael Tiemann and David Henkel-Wallace to provide commercial support for free software. ... The Common Object File Format (COFF) is an object file format that was introduced in Unix System V Release 3, and was later adopted by Microsoft for Windows NT. It was superseded by the more powerful ELF in System V Release 4, but as of 2005, COFF is still used... In computer science, object file or object code is an intermediate representation of code generated by a compiler after it processes a source code file. ... x86 or 80x86 is the generic name of a microprocessor architecture first developed and manufactured by Intel. ... Newlib is a C library intended for use on embedded systems. ... The GNU Compiler Collection (usually shortened to GCC) is a set of programming language compilers produced by the GNU Project. ... A cross compiler is a compiler capable of creating executable code for a platform other than the one on which the cross compiler is run. ...


The next step was to attempt to bootstrap the compiler on a Windows system, but this required enough emulation of Unix to let the GNU configure shell script run, which requires a shell like bash, which in turn requires fork and standard I/O. Windows includes similar functionality, so the Cygwin library proper just needs to translate calls and manage private versions of data, such as file descriptors. Flow diagram of autoconf and automake Autoconf is a tool for producing shell scripts that automatically configure software source code packages to adapt to many kinds of UNIX-like systems. ... A shell script is a script written for the shell, or command line interpreter, of an operating system. ... This article is about the Unix shell. ... The title given to this article is incorrect due to technical limitations. ... The standard streams for input, output, and error The standard streams are preconnected input or output channels between a computer program and its environment (typically a text terminal) when it begins execution. ... The term file descriptor is generally used in POSIX operating systems. ...


Initially Cygwin was called gnuwin32. The name was changed to Cygwin32 to emphasize Cygnus' role in creating it. When Microsoft registered the trademark Win32, the 32 was dropped to simply become Cygwin. Microsoft Corporation, (NASDAQ: MSFT, HKSE: 4338) is a multinational computer technology corporation with global annual revenue of US$44. ... Windows API is a set of APIs, (application programming interfaces) available in the Microsoft Windows operating systems. ...


By 1996, other engineers had joined in, because it was clear that Cygwin would be a useful way to provide Cygnus' embedded tools hosted on Windows systems (the previous strategy had been to use DJGPP). It was especially attractive because it was possible to do a three-way cross-compile, for instance to use a hefty Sun workstation to build, say, a Windows-x-MIPS cross-compiler, which was faster than using the PC of the time. Starting around 1998, Cygnus also began offering the Cygwin package as a product of interest in its own right. Year 1996 (MCMXCVI) was a leap year starting on Monday (link will display full 1996 Gregorian calendar). ... DJGPP is a 32-bit C/C++/ObjC/Ada/Fortran development suite for 386+ PCs that runs under DOS (or any OS that runs DOS . ... Sun Microsystems Logo Sun Microsystems (NASDAQ: SUNW) is a Silicon Valley-based computer, semiconductor and software manufacturer. ... MIPS may mean: MIPS architecture, a RISC microprocessor architecture. ... Year 1998 (MCMXCVIII) was a common year starting on Thursday (link will display full 1998 Gregorian calendar). ...


Christopher Faylor is currently the manager of the Cygwin development team. Christopher Faylor is the manager of the Cygwin development team. ...


See also

Free software Portal

Image File history File links Portal. ... Cygwin/X running rootless on Microsoft Windows XP. The screen shows X applications (xeyes, xclock, xterm) sharing the screen with native Windows applications (Date and Time, Calculator). ... MinGW or Mingw32 (Minimalist GNU for Windows) is a software port of the GNU toolchain to the Win32 platform. ... DJGPP is a 32-bit C/C++/ObjC/Ada/Fortran development suite for 386+ PCs that runs under DOS (or any OS that runs DOS . ... Windows Services for UNIX Microsoft Windows Services for UNIX (SFU) is a software package produced by Microsoft which provides a Unix subsystem and other parts of a full Unix environment on Windows NT and its successors. ... Cooperative Linux, abbrieviated as coLinux, is software that lets Microsoft Windows cooperate with the Linux kernel to run both in parallel on the same machine. ... KDE on Cygwin is the port of Qt and KDE to Windows using Cygwin, the POSIX emulation layer for Windows, and the Cygwin XFree86 server. ... MKS Toolkit - is a software package produced and maintained by MKS Inc. ... Wine is a project which aims to allow a PC with an x86 architecture processor running a Unix-like operating system and the X Window System to execute programs that were originally written for Microsoft Windows. ... UnxUtils is a collection of ports of common GNU Unix-like utilities to native Win32, with executables only depending on the Microsoft C-runtime msvcrt. ... The GnuWin32 project provides various GNU tools and software for the Win32 platform. ... The UWIN package allows UNIX applications to be built and run on Windows XP/2000/NT/ME/98/95 with few, if any, changes necessary. ... VMware Inc. ...

External links

Wikibooks
Wikibooks has more on the topic of

  Results from FactBites:
 
Cygwin - Wikipedia, the free encyclopedia (652 words)
Cygwin is a collection of free software tools originally developed by Cygnus Solutions to allow various versions of Microsoft Windows to act somewhat like a Unix system.
Cygwin consists of a library that implements the POSIX system call API in terms of Win32 system calls, a GNU development toolchain (such as GCC and GDB) to allow basic software development tasks, and some application programs equivalent to common programs on the Unix system.
Cygwin has no direct support for Unicode, nor does it support any character sets except the current Windows and OEM codepages of your system (e.g., for a Russian user, the only codepages available will be CP1251 and CP866, but not KOI8-R, ISO 8859-5, UTF-8 or anything else).
Cygwin on portable storage media (826 words)
Cygwin is a software package that enables one to work in a UNIX-like environment under a Windows machine.
Cygwin supports many flavors of Windows:XP, 2000, 98, etc. For more info on cygwin go to Cygwin.com.
These keys are modified through the ``mount'' command of cygwin and are referred to by cygwin to find out which directories on the Windows directory structure are going to be mapped to /bin, /lib and /.
  More results at FactBites »


 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m