Cygwin

Cygwin
Cygwin
Cygwin-logo.png
Cygwin X11 rootless WinXP.png

Unix-Wrapper-API für Windows
Basisdaten
Maintainer Red Hat
Aktuelle Version 1.7.9-1
(29. März 2011)
Betriebssystem Microsoft Windows
Kategorie API-Wrapper
Lizenz GPL und proprietär
Deutschsprachig nein
www.cygwin.com

Mit Cygwin [ˈsɪɡwɪn] lassen sich Programme, die üblicherweise unter POSIX-Systemen wie GNU/Linux, BSD und Unix laufen, auf Microsoft Windows portieren. Es ist eine Kompatibilitätsschicht, die die Unix-API unter verschiedenen Versionen von Microsoft Windows zur Verfügung stellt, auf deren Basis eine Vielzahl von Programmen aus der Unix-Welt unter Microsoft Windows übersetzt werden können.

Mittels Cygwin portierte Programme laufen unter Windows NT, Windows 2000, Windows XP, Windows Vista, Windows Server 2003 und seit Version 1.7 auch unter Windows 7 und Windows Server 2008. In älteren Versionen laufen auch Programme unter Windows 9x.

Cygwin wurde ursprünglich von der Firma Cygnus Solutions programmiert und seit deren Übernahme durch die Softwarefirma Red Hat erfolgt dort die Weiterentwicklung.

Inhaltsverzeichnis

Funktionsweise

Kern von Cygwin ist die so genannte Cygwin-DLL (cygwin1.dll), eine Dynamic Link Library, die Unix-APIs zur Verfügung stellt. Die APIs der Cygwin-DLL bilden das Pendant zu den System Calls unter Unix. Die mit Cygwin portierten Programme sind normalerweise nicht alleine lauffähig, da sie gegen die Cygwin-DLL gelinkt werden und somit von dieser abhängig sind.

Funktionalitäten

Es gibt mit Cygwin/X auch eine Portierung des X.Org-Servers auf die Cygwin-Umgebung, so dass unter Microsoft Windows ein kompletter X-Server bereitsteht.

In dem Programmpaket Cygwin/X ist Cygwin enthalten.

Durch den portierten X-Server ist es möglich, entweder UNIX/Linux-Programme, die für Windows kompiliert wurden, lokal auf dem Windows-Rechner auszuführen (Ausführen von startxwin.bat), oder aber Programme, die auf einem Unix- oder Linuxrechner ausgeführt werden, auf Windows darzustellen; auch kann man sich, ausgehend von dem Windows-Rechner, auf dem Unix-Rechner einloggen (Ausführen von startxdmcp.bat).

Dies kann für Privatanwender und Programmierer interessant sein, die Windows und Unix/Linux gleichzeitig einsetzen.

Lokale Partitionen werden mit /cygdrive/c, /cygdrive/d etc. angesprochen. Auf Windows-Freigaben kann mit //host/share/file zugegriffen werden.

Auch ein SSH-Server ist durch Cygwin möglich, der unter Windows als Service installiert werden kann. Häufig wird Cygwin auch genutzt, um Bash-Prozeduren zu programmieren, die dann automatisierte Systemfunktionen erfüllen können. Dazu gehören unter anderem lokale oder entfernte (remote) Datensicherungen (backups) auf andere Unix-Systeme. Eine ähnliche Funktionalität wie Cygwin realisiert mittlerweile auch Microsofts Services-für-Unix-Paket (SFU), das auf dem Interix-System basiert. Microsoft Windows Services for UNIX (SFU) wurde im Zuge der Vista-Einführung in „Subsystem for UNIX-based Applications“ (SUA) umbenannt und ist in den Editionen „Enterprise“ und „Ultimate“ von Vista enthalten.

Geschichte

Cygwin begann im Jahr 1995 als ein Projekt von Steve Chamberlain, einem Cygnus-Entwickler. Ihm war aufgefallen, dass auf PCs mit Intel-x86-CPUs, die Windows NT und Windows 95 als Betriebssystem hatten, in der Regel COFF als Objekt-Dateiformat benutzt wurde. Außerdem war ihm aufgefallen, dass die GNU-Compiler (GCC) bereits Unterstützung für x86 und COFF in Zusammenhang mit der C-Bibliothek newlib boten. Also sollte es, so seine Folgerung, – zumindest in der Theorie – nicht allzu schwierig sein, den GCC neu auszurichten, um damit einen weiteren Cross-Compiler zu schaffen, der dann unmittelbar ausführbare Dateien für die Windows-Plattform lauffähig erzeugt. In der Praxis war die Aufgabe mit einem gewissen Aufwand verbunden, den Chamberlain schließlich erfolgreich meisterte, so dass erste Beispielprogramme erzeugt und getestet werden konnten.

Als nächstes sollte auch der Compiler selbst dazu gebracht werden, auf einem Windows-System zu laufen; dazu mussten zunächst einige Basiskomponenten der üblichen GNU-Konfiguration, diverse Shell-Skripte sowie die Bash-Shell selbst auf dem Windows-System in einer Emulation lauffähig gemacht werden. Das Win32-API von Windows enthielt bereits zahlreiche sehr ähnliche Funktionen, sodass das Gros der verwendeten Systemaufrufe lediglich angepasst werden musste. Dies mündete in diversen Cygwin-Bibliotheken, sogenannten DLLs, die direkt auf dem Windows-System aufsetzten, aber nach oben hin die für Unix typischen Dienste (APIs) anboten.

Bis 1996 fanden sich einige weitere Entwickler, die sich dem Projekt anschlossen, insbesondere weil langsam klar wurde, dass es sich lohnen könnte, Unix-Anwendungen unter Verwendung der Cygwin-Komponenten für Windows-Systeme anzubieten. (Frühere Unix-zu-Windows Portierungen basierten zumeist auf der Entwicklungsumgebung DJGPP). Etwa 1998 begann Cygnus damit, Cygwin gewinnbringend zu vermarkten. Mittlerweile wird Cygwin als freie Software im Rahmen der GPL angeboten und zugleich unter Federführung von Red Hat weiterentwickelt.

Siehe auch

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Cygwin — Running Cygwin, including Cygwin/X, under Windows XP …   Wikipedia

  • Cygwin — на Windows XP Тип Эмулятор …   Википедия

  • Cygwin — Cygwin …   Wikipédia en Français

  • Cygwin — Saltar a navegación, búsqueda Cygwin Ejecutando Cygwin en Windows XP Desarrollador …   Wikipedia Español

  • Cygwin/X — is an implementation of the X Window System that runs under Microsoft Windows. It is part of the Cygwin project, and is installed using Cygwin s standard setup system. As with the rest of Cygwin, Cygwin/X is free software, licensed under the GNU… …   Wikipedia

  • Cygwin/X — est une implémentation du système X Window qui fonctionne sur Microsoft Windows. C est un logiciel libre. Cygwin/X fait partie du projet Cygwin, et peut être installé en utilisant le système standard d installation de Cygwin. Cygwin/X utilisait à …   Wikipédia en Français

  • Cygwin — es una colección de herramientas desarrollada por Cygnus Solutions para proporcionar un comportamiento similar a los sistemas Unix en Windows. Su objetivo es portar software que ejecuta en sistemas POSIX a Windows con una recompilación a partir… …   Enciclopedia Universal

  • Cygwin — noun a UNIX like environment for …   Wiktionary

  • Cygwin — ● np. ►APPLI Ensemble de logiciels libres permettant de compiler des applications en provenance du monde Unix sous Windows. Encore une fois, ils n ont pas pensé à la prononciation française …   Dictionnaire d'informatique francophone

  • KDE on Cygwin — is the port of Qt and KDE desktop environment (both of which are commonly distributed natively in Linux operating systems) to Windows using Cygwin, the POSIX emulation layer for Windows, and the Cygwin XFree86 server. It helps Wintel computers to …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”