Wine

**Wine** (acrónimo recursivo en inglés para *Wine Is Not an Emulator*, que significa «Wine non é un emulador») é unha reimplementación da interface de programación de aplicacións de Win16 e Win32 para sistemas operativos baseados en Unix. Permite a execución de programas deseñados pra MS-DOS, e as versións de Microsoft Windows 3.11, 95, 98, Me, NT, 2000, XP, Vista, 7 e MacOS.

O nome *Wine* inicialmente foi un acrónimo para ***WIN**dows **E**mulator*. Este significado foi cambiado posteriormente ao acrónimo recursivo actual.

Wine fornece:
* Un conxunto de ferramentas de desenvolvemento para portar código fonte a aplicacións Windows a Unix.
* Un cargador de programas, o cal permite que moitas aplicacións para Windows 2.0/3.x/9X/ME/NT/2000/XP/Vista e Win 7 se executen sen modificarse en varios sistemas operativos *unix-like* como GNU/Linux, BSD, Solaris e Mac OS X

## Historia do proxecto 
O proxecto Wine comezou no 1993, época da versión 3.11 de Windows. O proxecto posiblemente se orixinou en discusións en *comp.os.linux*. Os programadores Eric Youngdale e Bob Amstadt crearon a súa primeira versión. A razón pola cal Wine *non é un emulador* é que os emuladores tenden a duplicar o contorno completo no que un programa vive, incluíndo a simulación da arquitectura de microprocesador determinada. Wine, polo contrario, implementa o que podería chamar unha *capa de compatibilidade*, a cal fornece alternativas ás bibliotecas de Windows.

A mediados do ano 2002, xa se contaba cunha aplicación con máis dun millón de liñas de código fonte escrito en linguaxe C e cun grupo de máis de 300 programadores. O proxecto tivo tempos nos cales non se avanzou o suficiente, ata que no ano 2003, aplicacións moi estendidas no contorno Windows como Microsoft Office e Internet Explorer foron posibles de ser utilizadas en contornos Unix grazas a Wine.

O proxecto presenta grandes retos para os desenvolvedores, ao menos en parte debido á incompleta documentación da API de Windows. A pesar que a maioría das funcións da API Win32 están correctamente documentadas, existen aínda moitas áreas, como formatos de ficheiros e protocolos, para os cales non existen especificacións documentadas por parte de Microsoft.

Cara comezos do 2003, Wine podía executar moitos programas populares, como Lotus Notes e algunhas versións de Microsoft Office, con comportamentos e estabilidade variables. O éxito do funcionamiento de cada aplicación depende do uso de bibliotecas dinámicas (DLL) de Windows.

A empresa de software Corel axudou moito ao proxecto, empregando temporalmente a un dos principais desenvolvedores, Alexandre Julliard, xunto con moitos outros programadores secundarios. Esta axuda foi motivada polo *porting* da suite ofimática de Corel a GNU/Linux. Porén, debido a dificultades económicas, o apoio de Corel cesou.

Outras organizacións fixeron esforzos comerciais para apoiar o proxecto, incluíndo CodeWeavers e Linspire. CodeWeavers desenvolveu unha versión comercial, cerrada e visualmente máis atractiva, de Wine e comercialízaa baixo o nome CrossOver Office; ademais, colabora co proxecto, xa sexa financiándoo ou con parches.

O desenvolvemento oficial de Wine está orientado cara a correcta implementación da API de Windows como un todo e aínda que se atope un pouco atrasado nestas áreas, desde a súa versión 1.0 do verán do 2008 é capaz de executar con éxito e con poucos ou escasos erros unha grande variedade de aplicacións deseñadas para Windows.

Outros proxectos que incorporaron código fonte de Wine son Rewind e ReactOS.

## Estado actual de Wine 
miniatura|300px|Unha animación mostrando o progreso en compatibilidade de aplicacións de acordo aos resultados das probas de Wine AppDB (clic na imaxe para ver a animación).
De acordo a un estudo realizado en Internet por DesktopLinux.com en 2006, a aplicación Wine é bastante usada con relación ás demais cunha demanda do 33,5% dos enquisados, a pesar dos seus considerables defectos; mentres que un 16,7% utiliza o VMware e apenas un 7% usa a aplicación CrossOver. En tanto a porción dos enquisados que non utiliza ningún foi dun 39%.

O 17 de xuño do 2008 o proxecto Wine lanzou a versión 1.0, a primeira versión estable en quince anos de desenvolvemento. Esta presenta melloras con relación as versións alfa e beta, das cales se pode mencionar un mellor soporte de rato nos xogos, aplicacións con uso de bibliotecas OpenGL, manexo de novos estados en Direct3D e mellora do sistema de son, entre melloras importantes.

O 16 de xuño de 2010 o proxecto Wine lanzou a versión estable 1.2, presentando máis de 23 000 cambios no código fonte, máis de 3 000 bugs arranxados e o soporte para aplicacións de 64Bits.

O 7 de marzo de 2012 o proxecto Wine lanzou a versión estable 1.4, engadindo soporte a moitas novas aplicacións como Microsoft Office 2010, (aunque existindo agora o denominado S.O windows 8,dicho desenvolvemento pode considerarse obsoleto). o Starcraft 2.

## Características 
[250px|miniatura|dereita|[Antivirus ClamWin 0.93.1 executado en Ubuntu mediante Wine.]]

### Compatibilidade binaria 
* Soporte para programas da familia MS-DOS e Windows (3.x/9x/NT/2000/XP/2003/Vista/2008/7).
* Soporte para chamadas de funcións de Windows de 64, 32 e 16 bits.
* Código x86 de 64, 32 e 16 bits.
* Extensas bibliotecas de interrupcións pra programas utilizando chamadas de modo real INTxx.
* Capacidades avanzadas de trunking.
* Posibilidade de engadirlle máis bibliotecas de enlace dinámico (DLL), incluso as nativas de Windows, as cales están localizadas no cartafol*C:\Windows\System32*, e poden ser instaladas en wine copiando dichas librerías no cartafol *~/.wine/drive_c/windows/system32*.
* Deseño de enxeñería inversa para mellorar a solución fronte a erros.
* Execución sobre outras arquitecturas non Intel baixo emulación, con QEMU (Darwine era unha bifurcación de Wine feita para Mac OS X PowerPC, pero o proxecto quedou abandonado).

### Gráficos 
* Pode debuxar en contornos gráficos baseados en X11, SDL texto/ttydrv.
* Pantalla remota para calquera terminal X.
* Soporte total de GDI e parcial GDI32.
* Soporte de DirectX pra xogos.
* Pode utilizar impresoras para sistemas Microsoft Windows de 16 bits de forma nativa.
* Interface interna de impresión PostScript.
* Capacidade de *meta-Ficheiro*.
* Capacidade de execución nunha ou varias ventás.
* Posibilidade de instalar temas visuais de formato *msstyle*, os nativos de Windows.

### Outras características 
* Soporte de son e entradas alternativas.
* Soporte de módems o dispositivos por puerto serie.
* Trabajo en red con Winsock TCP/IP.
* Soporte de escáneres ASPI.
* Soporte de controis avanzados típicos de programas para Microsoft Windows de 32 bits.

### Wine API 
* Deseñado para ser compatible con código para Windows de 32 bits.
* Programas de mostra
* Documentación xerada automaticamente das API
* Compilador fonte de 32 bits
* Capacidade parcial de codificación Unicode
* Internacionalización: Wine está dispoñible en 16 linguas
* Depurador integrado e mensaxes de rastreo configurables

## Notas 
## Véxase tamén 
### Ligazóns externas 
* Sitio web oficial de Wine (en inglés)
* Programas compatibles (en inglés)
* Indicacións pra máis de cen programas compatibles, (en inglés)
* Benchmarks de Wine comparado con Windows XP (en inglés)