Cookies op Tweakers

Tweakers maakt gebruik van cookies, onder andere om de website te analyseren, het gebruiksgemak te vergroten en advertenties te tonen. Door gebruik te maken van deze website, of door op 'Ga verder' te klikken, geef je toestemming voor het gebruik van cookies. Wil je meer informatie over cookies en hoe ze worden gebruikt, bekijk dan ons cookiebeleid.

Meer informatie

Door , , 9 reacties
Bron: Wine HQ, submitter: PhoenixT

Wine logo (60 pix) Gisteren is versie 0.9.16 van Wine uitgebracht. Dit project is ooit opgestart met de bedoeling om Windows-programma's ook op andere besturingssystemen te laten draaien en heeft inmiddels een uitgebreide featureset. Dit programma, wat ondertussen op de besturingssystemen Linux, FreeBSD en Solaris draait, is een open source implementatie van Microsoft's Win32 Application Programming Interfaces (API). Meer informatie over Wine kan in deze FAQ worden gevonden. Het changelog van deze release laat de volgende veranderingen zien:

What's new in this release:
  • More work on Direct3D shaders.
  • Major DirectDraw rewrite on top of Direct3D.
  • Support for debug information in Dwarf format.
  • Beginnings of an OleView Winelib application.
  • Lots of bug fixes.
[break]
Wine screenshot (resized)
Versienummer:0.9.16
Besturingssystemen:Linux, BSD, Solaris
Website:Wine HQ
Download:http://ibiblio.org/pub/linux/system/emulators/wine/wine-0.9.16.tar.bz2
Bestandsgrootte:10,40MB
Licentietype:Voorwaarden (GNU/BSD/etc.)
Moderatie-faq Wijzig weergave

Reacties (9)

ziet er goed uit meot ik zeggen.
maar iemand enig idee hoe het zit met snelheid van win applicaties die gedraid worden op wine?
Zolang er niet heel erg exotische API calls worden gebruikt gaat het soms sneller als op Windows zelf.

wat t0maz al zegt, voor veel gebruikte programma's wordt een beetje extra geoptimaliseerd.

Maar de meeste programma's zijn wel snel omdat de proffesionele programeurs zo veel mogelijk basis API calls gebruiken, want dan heb je meer kans dat het op alle Windows versies werkt, en dat je niet per ongeluk een call heb gebruikt die je alleen in Win95 of alleen in XP tegenkomt.

En in die veel gebruikte API calls wordt ook het meeste tijd aan optimalisatie gestoken natuurlijk.
Sneller doordat Wine sommige api-calls gewoon negeert.
Sneller doordat Wine sommige api-calls gewoon negeert.
Of wat groffer implementeerd, omdat niet duidelijk is wat er in de echte call allemaal gedaan moet worden.

Hypotetisch voorbeeld:

void doLocalDamageUpdate(long href);

Je zou zeggen, check alleen je huidige window hier voor damage, maar mischien dat de orginele API call nog wel -ook- de parents gaat updaten. Als je functie een black-box is dan weet je niet dat je dat moet doen en ga je alleen uit van de naam en het geobserveerde gedrag.

Je slaat dus (noodgedwongen) dingen over, waardoor jij sneller bent. Echter, er kan best software zijn die er vanuit ging dat die parents ook geupdate werden, en deze gaat dus glitches geven onder Wine.

Ik weet uit ervaring dat je als programmeur niet elke API call die je gebruikt tot op de puntjes naleest in de docs wat ze moeten doen. Dikwijls probeer je wat, en als het op je scherm er goed uitziet (eventueel nog onder wat verschillende windows versies testen), dan is het goed. Je maakt dan onbewust fouten in je API calls en je bent afhankelijk van een 'toevallige' implementatie van die API. Pas als je je software onder een geheel andere implementatie draait merk je deze bugs.

Dit is voor een gedeelte de reden waarom sommige software heel goed draait onder Wine en andere weer compleet niet. (de bekende andere reden is natuurlijk dat Wine nog niet compleet is)
Dat hangt sterk van het programma af. Sommige programma's zijn wat populairder en daarom hebben ze speciaal daarvoor ook wat meer werk erin gestopt. Maar andere programma's waarvan je denkt dat ze vrij simpel zijn kunnen dan weer bagger werken. Dat heeft er natuurlijk ook mee te maken hoe netjes het programma is geprogrammeerd en nog een hoop andere factoren.

Ikzelf zie Wine als een programma om af en toe iets mee te proberen en een klein programmaatje draaien als dat even nodig is. Voor groterere programma's (of hele suites) kan je beter iets als CrossOver office gebruiken. Die richten zich speciaal op ondersteuning van dat soort software (denk aan Flash, Office, etc.) en dan heb je support ook.
Hoe kom je door nu bij? Heb je wel eens op msdn gekeken, de vista api is waanzinnig uitgebreid ten opzichte van XP.
Dat valt relatief wel mee. Voorheen gingen ALLE uitbreidingen in win32 en een gedeelte in MFC. Tegenwoordig zal een zeer groot gedeelte van extra functionaliteit in de .NET libs gaan.

User programma's zullen ook niet veel of helemaal niet meer win32 gaan gebruiken.

Het porten van .NET zelf en de MS specific libs wordt al door andere partijen gedaan, en valt dus niet op het bordje van Wine.

Wine kan zich dus veel meer gaan richten op de 'core' van de windows API en hoeft niet het GEHEEL (dus includief .NET en haar form libs etc) mee te nemen.
Vista api... ach... zolang XP nog de meest gebruikte windows is (en dat blijft ie nog wel ff) loopt het niet zo hard met programma's die puur op vista draaien, en heb je die hele api nog niet nodig. Geeft de wine- en mono-programmeurs genoeg tijd om die dingen te porten zou ik zo zeggen...
De downloadlink verwijst naar versie 0.9.14 terwijl ik op http://sourceforge.net/project/showfiles.php?group_id=6241 alleen 0.9.16 bij de source code zie staan.

Dat betekend voorlopig eerst zelf compileren? :?

Op dit item kan niet meer gereageerd worden.



Apple iOS 10 Google Pixel Apple iPhone 7 Sony PlayStation VR AMD Radeon RX 480 4GB Battlefield 1 Google Android Nougat Watch Dogs 2

© 1998 - 2016 de Persgroep Online Services B.V. Tweakers vormt samen met o.a. Autotrack en Carsom.nl de Persgroep Online Services B.V. Hosting door True