WINE
Wikipedia
Wine | |
---|---|
Wine logo |
|
Kehittäjä | Wine-tiimi |
Viimeisin versio | 0.9.34 / 30.3.2007 |
Alusta | Linux, BSD |
Ohjelmistotyyppi | Windows-yhteensopivuuskerros |
Lisenssi | LGPL |
Kotisivu | winehq.com |
WINE (lyhenne sanoista Wine Is Not an Emulator) on avointa lähdekoodia oleva Microsoft Windows -yhteensopivuuskerros, joka mahdollistaa Windows-ohjelmien ajamisen muilla käyttöjärjestelmillä. Winessä ei ole Windowsin koodia, eikä se tarvitse Windowsia ohjelmien ajamiseen, mutta siihen on mahdollista sisällyttää natiiveja Windowsin kirjastotiedostoja. Wine toimii x86-pohjaisissa Unix-järjestelmissä, kuten Linux, FreeBSD ja Solaris.
Wine on vapaa ohjelmisto. Alun perin se julkaistiin saman MIT-lisenssin alla kuin X Window System, mutta maaliskuussa 2002 se julkaistiin GNU Lesser General Public Licensen (LGPL) alaisena.
[muokkaa] Kehitys
Wine-projekti alkoi vuonna 1993 Bob Amstadin ja Eric Youngdalen toimesta ajatuksena ajaa Windows-ohjelmia Linuxissa. Alun perin se oli tarkoitettu ajamaan 16-bittisiä Windows 3.x -ohjelmia, mutta nykyään painopiste on Win32 APIssa ja 32-bittisissä Windows-ohjelmissa. Projekti on varmaankin lähtöisin Usenetin keskustelusta. Alexandre Julliard on ollut projektin johtaja vuodesta 1994
Sen sijaan, että Wine olisi täysi emulaattori, se tarjoaa yhteensopivuuskerroksen, joka sisältää vaihtoehtoisia toteutuksia normaaleille Windows-ohjelmien kutsuille.
Wineä kehitetään pääsääntöisesti Linuxille, mutta myös FreeBSD ja Solaris ovat vahvasti tuettuja.
Projekti on ollut aikaa vievää ja vaikeaa kehittäjille, ainakin keskeneräisen, puutteellisen tai väärän Win32 API:n dokumentaation takia. Kun useimmat Win32:n funktiot on dokumentoitu, on muita alueita, kuten tiedostoformaatit ja protokollat, joille ei ole virallisia Microsoftin spesifikaatioita. Lisäksi Windows-APIssa on useita Microsoftin tekemiä ohjelmien yhteensopivuuskorjauksia, joita ei ole dokumentoitu missään. Sen takia Wine-kehittäjien on täytynyt toteuttaa monia funktiokutsuja ja tiedostoformaatteja käyttäen käänteistekniikkaa (reverse-engineering).
Vasta lokakuun 25. päivä 2005, 12 vuoden kehityksen jälkeen, Winestä julkaistiin ensimmäinen varsinainen beta-versio versionumeroltaan 0.9.
[muokkaa] Toimintaperiaate
Winen toimintaperiaate on muuttaa Windows ohjelmien käyttämän Windows-APIn kutsut vastaaviksi Gnu/Linuxin-APIn kutsuiksi.
Kun ohjelma käynnistetään Winen kautta se lähettää Gnu/Linuxille tiettyjä viestejä kuten muistin varaamiseen ja ohjelman ajamiseen tarvittavia muuttujia. Linux ei ymmärrä näitä Windows API kutsuja, mutta Wine tulkkaa ne Linuxin ymmärtämään muotoon ja vastaa ohjelmalle. Windows ohjelma taas ei ymmärrä Linuxin vastauksia, mutta Wine tulkkaa Linuxin vastaukset Windows ohjelman ymmärtämään muotoon. Ja näin ohjelma käynnistyy täysin vieraassa ympäristössä.
Vastaavalla tavalla toimiva ohjelma on Mac OS Xn Classic.