x86-op-ARM is veel groter dan het kleine Windows Phone
Microsoft zou werken aan emulatie van x86-apps op ARM-processors, wat nuttig kan zijn voor Windows Phone. Maar de weerslag is veel groter dan dat kleine smartphone-OS. Wil Microsoft Apple nadoen?
Windows Phone is op flinke afstand de nummer drie op de markt voor mobiele besturingssystemen. Een van de oorzaken voor die Calimero-positie is het gebrek aan apps voor dit smartphone-OS. Ironisch, want Windows’ grote concurrentievoordeel was altijd juist het enorme aantal applicaties. Maar dan apps voor pc’s met x86-processors waarop het reguliere Windows draait. Microsoft heeft niet kunnen opboksen tegen de enorme voorsprong van Apple’s iOS en de flinke inhaalslag van Google’s Android.
Zoveelste emulatiepoging?
Geruchten duiken nu op dat de Windows-maker werkt aan technologie waarmee x86-programma’s kunnen draaien op ARM-processors. Die energiezuinige chips naar ontwerp van het Britse bedrijf ARM (nu in Japanse handen) zijn de de facto standaard op de mobiele markt. Dit ondanks veel werk en flinke investeringen van x86-processorproducent Intel, die op de pc-markt de scepter zwaait. ‘ARM Inside’ is de realiteit van smartphones en van veel tablets.
Het emuleren (of virtualiseren) van apps van een veelgebruikt besturingssysteem voor een kleiner alternatief klinkt dan ook logisch. Dit is echter al vaker geprobeerd en mislukt. Zie bijvoorbeeld IBM’s OS/2 en Windows-programma’s en ook recenter BlackBerry’s BB10 en Android-apps. De realiteit volgt echter niet de logica, onder meer doordat app-emulatie vaak toch beperkt blijkt of doordat dergelijke platformoverbrugging niet aanslaat bij developers.
Astoria en Continuum
Begin dit jaar heeft Microsoft deze realiteit ingezien en heeft het een streep gezet door een eigen overbruggingsproject. Dat ging om Project Astoria waarmee developers Android-apps makkelijk naar Windows 10 moesten kunnen overzetten. Dit zou dan nuttig voor Windows-tablets zijn. Technisch ging dit om porten en niet om emuleren, wat dus de insteek is van het werk dat Microsoft naar verluidt nu verricht. De mogelijk in wording zijnde x86-emulatie op ARM-chips kan Windows Phone helpen, maar daar houdt het nut niet op.
Microsofts kleine mobiele besturingssysteem is dankzij de Continuum-functie interessant voor zakelijke gebruikers, die vaak nog veel x86-software gebruiken. Continuum laat een Windows Phone-toestel via een dock dienst doen als pc met extern breedbeeldscherm, toetsenbord en muis. Dit werkt alleen voor apps uit de Windows Store, maar HP biedt via virtualisatie op een cloudserver ook de mogelijkheid om x86-applicaties te gebruiken.
Apple imiteren
Het door Windows zelf emuleren van x86-software maakt afname van deze HP-oplossing overbodig. Toch blijft het dan een niche binnen de zeer kleine markt van Windows Phone. Waarom neemt Microsoft dan de moeite? Het heeft immers net voor de zomer een stap terug gezet wat de smartphonemarkt betreft. Het antwoord is dat Microsoft misschien wel Apple wil navolgen met een naadloze overstap voor zijn hoofdplatform.
Intel is heer en meester op de pc-markt, maar ARM blijkt onomzeilbaar op de mobiele markt. Microsoft heeft eerder al een poging gedaan om die chips te omarmen. Het heeft een aparte uitvoering van Windows 8 uitgebracht, die dan alleen draaide op computers met ARM-processors. Dit besturingssysteem, Windows RT, moest het dan wel doen zonder de rijke catalogus van bestaande Windows-programma’s. Het eigen Office is wel geport naar RT, maar uiteindelijk heeft Microsoft er de stekker uit getrokken.
Rosetta als overbrugging
Emulatie van x86-applicaties op een ARM-uitvoering van Windows kan herhaling van dit debacle voorkomen. Dat is geen theorie, want er is een succesvol precedent. Apple is jaren terug voor zijn Macs overgestapt van PowerPC-processors naar Intel-chips. Voor applicaties heeft het daarbij een tijd lang een tussenlaag (Rosetta) in OS X aangehouden, waardoor PPC-apps functioneerden op Intel-Macs.
Het prestatieverlies door die ingebakken emulatielaag was toen wel fors, maar dat nam geleidelijk af naarmate de hardware sneller werd. Tegenwoordig is er veel meer ruimte om de last van emulatie (en virtualisatie) te dragen. Microsoft zou met zijn x86-op-ARM project dus wel eens kunnen werken aan een nieuwe ARM-toekomst voor Windows, die dan voor gebruikers eigenlijk onzichtbaar is. Of het bedrijf wil dit als optie hebben indien Intel het voor smartphones en tablets blijft afleggen tegen ARM.
Van 4 naar 2 naar 1
Vergeet ook niet dat Windows (NT) ooit draaide op maar liefst vier verschillende processorarchitecturen: x86, Alpha, MIPS en PowerPC. De twee laatstgenoemden zijn al snel gesneuveld en de support voor Alpha-chips is later geschrapt. Tussentijds is er nog wel Intels Itanium-processorplatform bijgekomen, wat ook weer is verlaten door Microsoft. Deze processors waren allen voor servers. ARM-chips waren aanvankelijk voor PDA’s, telefoons en smartphones. Microsoft heeft die processorarchitectuur gebruikt met Windows (CE, Mobile en Phone) en er later ook tablets mee gevoerd (met Windows RT).
Al deze pogingen tot diversificatie van het Windows-platform hebben Microsoft echter geen succes opgeleverd. Een belangrijke reden daarvoor was het feit dat software telkens apart gemaakt - of flink aangepast - moest worden voor de andere hardware-ondergrond. Goed uitgevoerde emulatie biedt een uitweg. En mogelijk is Microsoft met een eventuele ARM-overstap Apple een stap voor.