Wine

Article in other languages:

Wine
WINE-Logo.svg
Wine Configuration.png
Wine draaiend onder Ubuntu
Ontwikkelaar Wine team
Meest recente versie 1.0.1 (17-10-2008)
Laatste bètaversie 1.1.35 (18-12-2009)
Besturingssysteem Linux, BSD, Solaris en Mac OS X
Categorie Compatibiliteit met Windows
Licentie LGPL licentie
Website Website van Wine
Portaal  Portaalicoon   Informatica

Wine is een open-source programma om software die geschreven is voor Windows te gebruiken op andere besturingssystemen, met name Linux. Wine implementeert zowel de Win16 als Win32 API en kan dus zowel oude als nieuwe Windowsprogramma's draaien, maar kan Windows als besturingssysteem zelf niet uitvoeren. De naam Wine staat voor Wine Is Not an Emulator.

Inhoud

Werking

Een programma in Windows maakt veel gebruik van standaard bibliotheken die bij Microsoft Windows horen. In Wine zijn deze bibliotheken opnieuw geschreven zodat ze ongeveer hetzelfde doen. Des te meer een programma goed geschreven is en de standaard bibliotheken gebruikt, des te groter de kans dat het programma ook in Wine zal werken.

De code van een programma wordt eerst door Wine nagekeken op aanroepen van de bibliotheken. Deze aanroepen worden vertaald, zodat de bibliotheken van Wine worden aangeroepen. Vervolgens wordt de code van het programma op volle snelheid uitgevoerd. Er wordt dus geen code geëmuleerd, maar enkel de aanroepen van de bibliotheken worden vertaald.

In theorie zou een programma daarom ongeveer net zo snel moeten werken als in Microsoft Windows. In de praktijk kan het programma langzamer zijn, vanwege de vertaalslag die gemaakt wordt. Maar een programma onder Wine kan ook sneller werken, omdat de bibliotheken van Wine eenvoudiger zijn, en omdat de schijftoegang in Linux vaak sneller is.

Omdat in linux OpenGL gebruikt kan worden, werkt een programma dat OpenGL gebruikt vaak goed in Wine. In Linux is echter geen DirectX te gebruiken. Toch kunnen spellen met DirectX in Wine werken, omdat de aanroepen naar DirectX door Wine vertaald worden naar OpenGL.

Emulator of niet?

Volgens de ontwerpers kan Wine geen emulator genoemd worden. Deze stelling veroorzaakt op internet vaak lange discussies. De ontwerpers definiëren een emulator namelijk als een virtuele machine en aangezien Wine geen virtuele machine is is het dus geen emulator, zoals b.v. VMWare. Bij een ruimere definitie van emulatie, zoals "het simuleren van een omgeving bovenop een bestaande omgeving," kan Wine wel een emulator worden genoemd.

Langdurig project

Het Wine project loopt al sinds 1993. Wine is echter nog steeds maar beperkt effectief, veel programma's zijn niet onder Wine aan de gang te krijgen. Dit hoewel veel bedrijven grote investeringen in Wine gedaan hebben.

Een belangrijke reden hiervoor is dat de Windows-API erg complex is en Microsoft deze regelmatig verandert. Zo werd met de introductie van Windows 95 de bestaande 16-bit API vervangen door een 32-bits API. Met de introductie van Windows NT werd deze API nog eens flink uitgebreid. Bij Windows 95 werd een grafische interface DirectX geleverd. Bij de introductie van DirectX versie 3 werd deze echter compleet vervangen door een nieuw systeem. De volgende versies waren minder radicaal, maar nog steeds werd iedere keer een flink stuk van de functionaliteit naar het verleden verwezen en vervangen door nieuwe functionaliteit. Met andere woorden, Wine loopt een beetje achter de feiten aan.

Een andere reden hiervoor is dat het Wine project erg ambitieus is; het wil een Windows-implementatie tot stand brengen zonder afhankelijk te zijn van externe componenten. Het gevolg is dat behalve de Windows-kernel ook de bij Windows bijgeleverde bibliotheken nageprogrammeerd moeten worden. Verder wil men bijvoorbeeld dat Windows-programma's van X11-lettertypen gebruik kunnen maken en men mikt niet alleen op Linux, maar ook op andere besturingssystemen.

Na jaren ontwikkelen heeft Wine in maart 2008 aangekondigd versie 1 uit te geven. Daarom is op 2 mei 2008 de "code freeze" ingegaan. Vanaf die datum werden er enkel nog bugs gerepareerd. Er zijn 5 Release Candidate's uitgegeven tussen 9 mei en 13 juni. Op 17 juni is uiteindelijk versie 1.0 uitgegeven. Er is na de stabiele release van 1.0 een nieuwe 1.1.x branch begonnen waarbij naar een stabiele Wine 1.2 toegewerkt wordt.

Door Wine werd OpenGL al ondersteund, maar ook DirectX van Microsoft wordt vrij goed ondersteund. In 2009 wordt er ook gewerkt aan ondersteuning voor de USB-bus. Steeds meer programma's gaan gebruik maken van de Microsoft .NET bibliotheken, en deze zijn nog niet eenvoudig onder Wine werkend te krijgen.

Commerciële edities

  • Crossover Office is een commerciële versie van Wine, gericht op het draaien van kantoortoepassingen en dan met name Microsoft Office.
  • Cedega (voorheen WineX) is een commerciële versie van Wine gericht op het draaien van spelletjes.

Beide pakketten leveren in hun doelmarkt een iets betere compatibiliteit en werken het normaal vrij ruwe, gebruiksonvriendelijke Wine af tot een verkoopbaar product.

Licentie

Aanvankelijk werd Wine onder een BSD-licentie verspreid. Tot ongenoegen van de Wine-ontwikkelaars gaven bedrijven die commercieel met Wine bezig waren hun wijzigingen niet terug aan het Wine-project. Daarom werd in maart 2002 de licentie veranderd in de LGPL licentie, zodat het nu verplicht werd wijzigingen vrij te geven.

Zie ook

  • ReactOS, een besturingssysteem dat gebruikt maakt van de kennis van het Wine project.

Externe links

Questions for article:

This article is from Wikipedia. All text is available under the terms of the GNU Free Documentation License.


IHS Europe: Infrared Heating Systems for Home and Business.