Wine moet Windows-apps op Android laten werken

Codeweavers werkt aan een Android-versie van Wine, het programma voor Unix-based besturingssystemen dat het draaien van Windows-applicaties mogelijk maakt. De ontwikkelaar van Wine toonde de port onlangs op de bijeenkomst Fosdem in Brussel.

Als Wine voor Android uitkomt, kunnen gebruikers van smartphones en tablets met Googles mobiele besturingsysteem software die gemaakt is voor Windows draaien. De Android-versie van Wine is nog lang niet af. Volgens de site Phoronix, die bij de briefing in Brussel was vertegenwoordigd, is Wine op Android nog te traag om bruikbaar te zijn.

Wine voor Android-demo

Tijdens de demo toonde Alexandre Julliard, die Wine ooit heeft ontwikkeld en er nog steeds aan werkt, een Windows-applicatie in Wine in een geëmuleerde Android-omgeving op een MacBook. Dat zou een van de redenen zijn geweest voor de beperkte snelheid. Julliard werkt ook aan een Wine-versie voor desktop-Unix-omgevingen op ARM-processors. Het is onduidelijk wanneer Wine voor Android klaar moet zijn en of het ooit wordt uitgebracht.

Door Arnoud Wokke

Redacteur Tweakers

04-02-2013 • 09:29

53

Reacties (53)

53
52
19
0
0
11
Wijzig sortering
Nu snap ik ineens waarom men bezig is met de ARM port :) . Wine op android lijkt op het eerste zicht leuk, maar ik zie op dit moment nog weinig toegevoegde waarde, eenvoudigweg omdat Windows apps niet zijn gemaakt voor kleine touchscreens. Iets wat in de toekomst met Win8 Metro apps misschien wel zal verbeteren.
Vergeet niet dat er naast android telefoons ook nog tablets zijn, Een simpel windows programma lijkt me op een 10.1 tablet prima te gebruiken 8-)
Nope, de UI is niet aangepast voor bediening met de vingers. Die is gemaakt voor een muis waar je klikt tot op pixel niveau ipv met een vinger waarbij je moeilijk op kleine icoontjes kunt mikken. Ook zijn Windows programmas niet gemaakt om het beeld goed te schalen, ga je dat dus op een tablet draaien met zo een extreem hoge resolutie gaat alles er enorm klein uitsizen. Daar zou wine zelf eventueel nog wel een oplossing aan kunnen bieden maar dat maakt alles nog een keer complexer.
Waarom zou dat het complexer maken? Het moet toch al door een emulatielaag, dan kun je net zo goed de windows app in een screenbuffer laten schrijven en die dan vergroot weergeven (kun je je gpu zelfs laten doen).
Bovendien, al zou het priegelig worden, dan nog kan het bijzonder handig zijn om toch nog even die ene app te kunnen gebruiken zonder daar meteen een laptop voor mee te moeten slepen. Niet alles hoeft per se altijd een perfecte user experience te hebben.
Denk ook aan transformer-achtige oplossingen en besturing met bluetooth-toetsenbordjes en/of muizen. Er zijn genoeg situaties waarbij Wine erg handig is, en de nadelen niet zo op de voorgrond staan. Ook krijgen steeds meer programma's en websites een zogenaamde HiDPI mode, voor schermen met erg veel DPI voor hun schermgrootte.

Ik denk dus dat er echt wel plek is voor Wine onder android.
Als je het programma's zoals photoshop hebt lijkt het me ook niet te doen. Maar er zijn heus wel simpelere dingen te bedenken. Je kan ook altijd nog een muis en toetsenbord aankoppelen.

[Reactie gewijzigd door teun95 op 23 juli 2024 06:42]

Als ik een tablet/laptop-convertible ook kan inzetten voor Windows-programma's dan zou dat voor mij een groot pluspunt zijn. Dan wordt zo'n convertible meteen een stuk aantrekkelijker. Als bijv Photoshop en Office straks goed zouden kunnen draaien dan is Android ineens inzetbaar als een meer volwassen desktop-systeem.

Wellicht is het aannemelijker dat we straks Ubuntu op een dergelijk systeem draaien. Dan is Wine allang voor handen en kunnen we gewoon met Windows-programma's aan de gang. Android op mijn telefoon is fantastisch maar op een convertible is het voor mij en vast voor velen nog veel te beperkt, hoe mooi ik die devices ook vind.
Nou echt niet. Van't weekend heb ik net eens gespeeld met splashtop waarmee je een RDP verbinding kan maken met een PC. Dus krijg je de PC GUI en PC applicatie op je tablet (althans de bediening). Nou, die bediening is een ramp.

Allereerst werkt de muis heel anders dan een tablet. Op een tablet wijs je direct aan wat je wil, met de muis moet de aanwijzer eerst naar het object bewegen. Nu kent splashtop 2 modes: als tablet en als touchpad.

Als tablet werkt niet lekker want de GUI elementen zijn te klein, het plaatsen van de cursor is niet nauwkeurig. Als touchpad werkt wel maar is zeer verwarrend want de plaats van je vingers op het scherm hebben geen relatie met wat er onder je vinger zit want de acties voer je uit waar je muis staat.

Scrollen is ook een ramp. Normaal zet je de muis op de scrolbalk, houdt links ingedrukt en ga slepen. In touchpad mode zit je allereerst al dat je geen knop hebt. Bij splashtop hebben de dus een software knop. Die vasthouden gaat problemen geven met de veegbeweging om de muis naar beneden te bewegen, want hoe maakt het tablet verschill tussen een pinch met 2 vingers en 2 vingers waarvan de ene een muisknop is en de andere de muis moet bewegen. Bij splashtop hebben de dat opgelost door de muisknop niet vast te houden met een vinger maar als toggle waarbij de knop ingedrukt blijft. Een soortgelijk probleem krijg je ook bij tekst selectie.

In tablet mode hebben ze allerlei 3 vinger guestures om te scrollen. Echter wat verslepen en tekst selecteten lijkt weer zo op elkaar dat dat niet goed werkt. Het is ook niet voor niets dat tekst selectie in Android totaal anders werkt en scrollen gewoon gaat met over het scherm vegen in plaats van een scroll balk.

Kortom, je blijft schakelen tussen tablet mode en touchpad mode en niets werkt echt goed. Nu kun je splashtop de schuld geven maar ik zou echt niet weten hoe het wel zou kunnen werken. Mijn enige conclussie is dat een muis cursor totaal anders werkt dan een touchpad en dat een muis cursor applicatie op een touchpad gewoon niet te doen is.

Maar daar was Microsoft ook al achter, die Modern GUI hebben ze niet voor niets gemaakt en de oude Windows tablet versies waren niet voor niets problematisch.

Overigens wel grappig: Wine is "Wine Is Not an Emulator" maar als ze nu x86 code uitvoeren op een ARM is het dat wel. Of gaan ze uit van recompiled Windows applications op ARM of hebben ze het over Windows 8 RT apps draaien op Android. Bij dat laatste kan ik me wat voorstellen, hoewel een App eerder beschikbaar is in Android dan Windows 8. Misschien Office van Windows 8 RT draaien op Android?
Klopt maar zelfs dan is dit een groot voordeel, het is makkelijker om een nieuw frontendje te maken voor je programma dan helemaal op nieuw moeten beginnen. Voor Linux wordt zo nu en dan ook wel iets uitgebracht wat gewoon WINE gebruikt.
Het is mischien "makkelijker" (al zal er genoeg compatibiliteits issues onstaan) zijn maar ga je van je doelgroep verlangen dat ze even Wine installeren op hun mobiel?

En dit zal vast allemaal buiten de Android playstore moeten en hoe zat het dan ook alweer met virussen en malware? dat was toch de schuld van de mensen omdat ze buiten de standaard playstore installeren? Op deze manier zorg je er wel voor dat die problemen naar voren komen.

Vindt het maar gek om de mensen de schult te geven van die problemen omdat ze buiten de standaard store applicatie installeren en vervolgens het gaan aanmoedigen omdat te doen.

Nog leuker is het als Wine wel in de store komt want dan moet je de applicaties die daarbinnen draaien weer buiten de store installeren. Geef je de mensen nogsteeds de mogelijkheid om die virussen en malware te delen.

[Reactie gewijzigd door ronaldmathies op 23 juli 2024 06:42]

En dit zal vast allemaal buiten de Android playstore moeten en hoe zat het dan ook alweer met virussen en malware? dat was toch de schuld van de mensen omdat ze buiten de standaard playstore installeren? Op deze manier zorg je er wel voor dat die problemen naar voren komen.
Wine is een poweruser tool dus je mag er van uit gaan dat die mensen wel verstand van zaken hebben...

Zo moedig ik bepaalde mensen wel aan buiten de market te installeren en andere (mijn moeder/zus) niet. Is dat zo raar dat bepaald advies niet voor iedereen is weggelegd? Denk dat ik jouw dan indeel in de groep die ik het afraad als je dat niet snapt...

Daarbij is het nu nog hardstikke pre-alpha dat hoort niet in de store, wie weet komt dat nog als het helemaal klaar is en soepel werkt...
En ook gelijk weer een nadeel want zo krijgen we crappy op wine gebaseerde software ipv native software. Wie ooit wine onder Linux heeft gebruikt weet dat het echt niet kan opboksen tegen native applicaties. Zelfs als de app voor wine is gemaakt, zoals bijvoorbeeld Google Picasa.
Native is niet perse beter. HTML/CSS, java en .Net applicaties zijn ook niet native en worden toch veel gebruikt.
Ik gebruik zelf wine eigenlijk alleen voor games, ik mis onder Linux geen Windows applicaties, maar een hoop games draaien er prima op. En behalve dat, is het een extra mogelijkheid. Als je het crappy vind, gebruik je het toch lekker niet? Voor andere mensen kan het handig zijn.

Ik vraag me af of je hiermee WoW op een android tablet zou kunnen draaien :+
Laat maar, ik bedenk me 2 seconden na het posten dat er van de performance niks overblijft omdat het door een ARM emulatielaag heen moet, ipv gewoon de native x86 instructies naar de processor sturen zoals onder x86 Linux...

[Reactie gewijzigd door kozue op 23 juli 2024 06:42]

Anoniem: 483694 @teek24 februari 2013 14:23
om een of andere reden is mijn fps op wine+linux hoger dan met dezelfde pc op windows
dit kan ik me dus helemaal niet voorstellen. over het algemeen zijn de windows drivers geschreven door fabrikanten een stuk beter dan de fan hobby projecten die de linux community released. Gooi daar nog een virtualisatielaagje overheen en linux loopt al mijlenver achter.

misschien is jou windows install helemaal verpaupert? voor ubuntu gebruikers raad ik het volgende aan; re-install of re-ghost je windows OS net zo vaak als dat je dat bij je Ubuntu OS doet en je zult zien dat het ongelooflijk snel blijft. 8)7
Dat is maar een klein probleem. Wine is geen emulator, normale windows applicaties zullen dus alleen op de weinige telefoons met Intel processors werken.
Of het is misschien de bedoeling om juist de Windows 8 RT apps te draaien. Dat zijn ARM versies en bovendien geschikt voor touch.
Tijdens de demo toonde Alexandre Julliard, die Wine ooit heeft ontwikkeld en er nog steeds aan werkt, een Windows-applicatie in Wine in een geëmuleerde Android-omgeving op een MacBook.
Dus in OSX een Android emulatie gebruiken om Windows applicaties te draaien? Die gast moeten we eens op Boot Camp wijzen :+
Dat lost niks op en maakt het nog complexer. Dan draai je een Android emulator op Windows op een Mac om Wine op Android te demonstreren.
Dat is niet hetzelfde, bij Bootcamp moet je windows booten voor je de apps kunt draaien en kun je dus op dat moment niet bij osX. Met Wine draai je windows en osX apps naast elkaar.
Oké, VMWare fusion dan :+ Of VirtualBox , of gewoon Wine voor OSX (die idd ook gewoon bestaat)
Ik denk dat dat vooral bedoeld is om te laten zien dat ze de windows app echt wel emuleren.
Een windows app emuleren onder windows is mss net dat tikkeltje minder spectaculair ;)
"Het is onduidelijk wanneer Wine voor Android klaar moet zijn en of het ooit wordt uitgebracht"
Ik denk dat deze zin genoeg zegt. Dat het alleen op hobby basis gaat worden gemaakt en gebruikt zal worden door een kleine groep. Tenzij ze ms office goed draaiende krijgen..
Ik zie de meerwaarde wel van in, Android ondersteunt muis en toetsenboord via USB dus zo zou je de Windows programma's normaal kunnen gebruiken.
"een bijeenkomst in Brussel". Dat ziet er wel heel erg uit als FOSDEM van het voorbije weekend: https://fosdem.org/2013/ en dat mag gerust met naam genoemd worden.
update: was het deze talk: https://fosdem.org/2013/schedule/event/wine_arm/ ?

[Reactie gewijzigd door TeRanEX_ op 23 juli 2024 06:42]

De naam WINE staat voor Wine Is Not an Emulator.

Iets zegt me dat de android versie wel een x86 emulator moet hebben?
Dat het draaid in een emulator zegt nog niet dat WINE zelf een emulator is ;)
x86 programma's op een ARM telefoon zonder te emuleren?
Hij zegt niet dat er niet geëmuleerd wordt, enkel dat WINE geen emulator is (ookal draait het misschien binnen een emulator)...

Als je gewoon gelezen had wat ie zei dan was je opmerking zwaar overbodig geweest...
Als je een Windows Tablet koopt hoef je niet te emuleren. Wine voor Linux snap ik omdat het grootste deel van pc ontwikkelaars Windows ontwikkelaars zijn.

Momenteel zijn er zat Windows en Android gebruiken. Is er nu echt een windows app waar geen android alternatief voor is te vinden?
Soms gaat het er (zeker bij echte Tweakers) alleen al om 'omdat het kan'.
Mogelijke nuttige toepassingen komen wellicht later wel.

WINE op Windows RT lijkt me ook wel een interessante... ;)
ik zie de toegevoegde waarde nog niet echt.
het is ten eerste nog lang niet af dus zal het zoizo nog een hele tijd duren voor het af is. en als het af is hoe werken windows apps dan ? werken ze vloeiend of krijg je hier en daar toch te maken met bugs en werken maar een baapaald aantal apps wel en andere apps niet ?
daarbij zijn er op android zo veel apps dat er ook wel een zelfde soort of dezelfde app tussen zit in de android store dus ja op dit moment is het zoizo nog geen toevoeging
Als ik het goed heb begrepen (Weet wel zeker dat ik het heb :P) is dat er een hoop in Wine via DLL thunking werkt.

Het principe van Wine is dus: je maakt een DLL 'loader' voor een ander OS, wat door parsing naar de juiste plek in de DLL springt en de cpu de binaire code daar laat uitvoeren.

Vervolgens hebben ze waar nodig (op veel plekken :)) DLL calls herschreven omdat ze anders niet lekker werken (denk aan file system en zo).

Maar de meeste apps die werken onder Wine, werken omdat ook 'onbekende' DLLs gewoon draaien, want het blijft dezelfde cpu architectuur.

Dit geintje gaat niet werken als je op een ARM cpu probeert x86 spul te draaien. Ze kunnen de hele Win32 API ondertussen dan wel na geschreven hebben, maar elke DLL die door een applicatie meegeleverd wordt gaat niet werken.

Of zouden ze door middel van Qemu en zo de x86-stukken 'virtualiseren' naar ARM? Dat verklaart dan ook wel de snelheid. Een rappe Core i7 kan al moeite hebben om een ARM cpu te emuleren, ik denk andersom is het helemaal een ramp :)
Maar Wine is geen emulator. Als je Windows-applicaties op een ARM-based apparaat wil laten werken, moet er wel degelijk ge-emuleerd worden, gezien 99,9999% van alle windows-apps x86/x64 is.

Op deze manier gaat Wine tegen zichzelf in, want Wine betekent "Wine Is Not an Emulator", toch? ;)

Op dit item kan niet meer gereageerd worden.