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

Cygwin

Ejecutando Cygwin en Windows XP
Información general
Tipo de programa Capa de compatibilidad
Desarrollador Red Hat y otros
Lanzamiento inicial 1995
Licencia GPL
Información técnica
Programado en
Plataformas admitidas Microsoft Windows
Versiones
Última versión estable 3.4.9 (info) ( 6 de septiembre de 2023 (6 meses y 9 días))
Enlaces

En la actualidad, el paquete está mantenido principalmente por trabajadores de Red Hat. Se distribuye habitualmente bajo los términos de la GPL con la excepción de que permite ser enlazada con cualquier tipo de software libre cuya licencia esté de acuerdo con la definición de software libre. También es posible adquirir una licencia con costo para distribuirla bajo otros tipos de licencia.

Visión general editar

El sistema Cygwin tiene varias partes diferenciadas:

Además se incluye una biblioteca denominada MinGW que funciona de forma análoga a la biblioteca nativa MSVCRT (que implementa la API de Windows). Esta biblioteca tiene una menor carga de memoria y tiene una licencia muy permisiva pero no implementa la API POSIX de forma tan completa como Cygwin.

Uno de los puntos débiles del sistema es la falta de soporte Unicode. Únicamente se soporta el juego de caracteres del sistema Windows sobre el que ejecuta.

Historia editar

Cygwin surge en 1995 como un proyecto de Steve Chamberlain (un ingeniero de Cygnus). Este ingeniero descubrió que Windows 95 y NT utilizan como formato para sus archivos objeto COFF y GNU incluía soporte para x86 y COFF. Esto supone, al menos en teoría, que no sería difícil adaptar el compilador GCC y crear un compilador cruzado que creara ejecutables para Windows. Tras demostrarlo en la práctica, los primeros prototipos comenzaron a aparecer rápidamente.

El siguiente paso era intentar configurar el compilador en un sistema Windows pero esto precisa una emulación de un entorno Unix para permitir que el script autoconf ejecutara correctamente. Por ello era necesario disponer de un shell como bash que facilitara los fork y la entrada/salida. Windows proporciona esa funcionalidad por lo que la biblioteca Cygwin únicamente necesitaba traducir las llamadas y gestionar de forma interna la información privada (descriptores de fichero...).

En 1996 se unieron más ingenieros al proyecto puesto que quedaba demostrado que Cygwin sería una herramienta muy útil para permitir que las herramientas de Cygnus ejecutaran en sistemas Windows (el mecanismo empleado hasta el momento era el uso del compilador DJGPP). En 1998, Cygnus empezó a distribuir el paquete Cygwin como un producto de suficiente interés por sí mismo.

Véase también editar

Otros enlaces editar

  •   Portal:Software libre. Contenido relacionado con Software libre.
  • Cygwin/X una implementación del protocolo X11 usado por el entorno gráfico que ejecuta sobre Cygwin.
  • MinGW implementa un conjunto de las herramientas de desarrollo GNU para Windows
  • Services for UNIX un producto, distribuido gratuitamente por Microsoft, que proporciona características similares a Cygwin. Su mejor baza es la gran velocidad aunque se cree que las próximas versiones no estarán disponibles para los sistemas de escritorio
  • CoLinux se trata de una aproximación diferente. Ejecuta un Linux completo en Windows sobre el que ejecutan los programas

Enlaces externos editar