Je kent misschien wel een aantal onofficiële iOS-apps die een vorm van emulatie bieden. Deze apps draaien op basis van hacks en exploits, waardoor de prestaties aanzienlijk afnemen – maar dat staat op het punt te veranderen. Apple heeft in iOS 14.2 stilletjes ondersteuning geïntroduceerd voor Just-In-Time (JIT) compilatie, waardoor emulatie-apps op volle snelheid kunnen draaien op de iPhone en iPad.
Riley Testut, de ontwikkelaar achter AltStore, deelde met 9to5Mac meer details over hoe deze verandering van invloed zal zijn op deze onofficiële apps die console- en virtuele machine-emulatie bieden. Maar laat ik eerst kort uitleggen wat JIT is en hoe het werkt op iOS.
JIT, of Just-In-Time compilation, is een manier om software uit te voeren die tijdens de uitvoering wordt gecompileerd, terwijl een traditionele software volledig wordt gecompileerd voordat deze wordt uitgevoerd. Met JIT wordt de broncode in real time vertaald naar de native code van de machine.
Apple heeft nooit officiële ondersteuning geboden voor JIT-compilatie op iOS, maar sommige ontwikkelaars hebben manieren gevonden om het uit te voeren met hacks, die ten koste gingen van een aantal bugs en lage prestaties. Deze exploits zijn echter volledig verwijderd in iOS 14. Tenminste, tot nu.
Zoals beschreven door Testut, heeft Apple ondersteuning voor JIT-compilatie toegevoegd in iOS 14.2 beta 2 – maar dit is nooit publiekelijk vermeld door het bedrijf. De ondersteuning werd gehandhaafd gedurende de beta’s en werd behouden in de uiteindelijke release. De ontwikkelaar gelooft dat dit een officiële implementatie is in plaats van een fout van Apple, maar er is geen manier om dit voor nu te bevestigen.
Met JIT-compilatie-ondersteuning op iOS 14.2 kunnen emulatie-apps nu op volle snelheid draaien zonder hacks, jailbreak en andere compromissen.
Met JIT zou Delta bijvoorbeeld in theorie krachtigere systemen als de PS2, GameCube en Wii kunnen emuleren; zonder JIT zouden we nog een aantal jaren moeten wachten voordat de hardware daartoe in staat zou zijn. In eerste instantie was ik sceptisch, maar ik denk nu dat dit een opzettelijke verandering was.
Dat betekent echter niet dat je emulatie-apps in de App Store zult zien, of zelfs maar andere apps die JIT gebruiken. Testut heeft ons verteld dat de huidige implementatie alleen werkt voor sideloaded apps, die meestal worden geïnstalleerd via Xcode en andere ontwikkelaarstools in plaats van via de App Store. Met andere woorden, dit is een functie die bedoeld is voor ontwikkelaars met debugging-doeleinden.
Ik betwijfel of het beperken van JIT tot alleen sideloaded apps de bedoeling hierachter was (en waarschijnlijk meer te maken heeft met de noodzaak voor apps om niet-ondertekende code uit te voeren bij debugging met Xcode), maar ik zou benieuwd zijn of deze beperking op de lange termijn blijft bestaan.
Maar als je AltStore hebt, kun je binnenkort genieten van apps als UTM, dat virtuele machines op iOS biedt, en DolphiniOS, dat in feite een GameCube- en Wii-emulator voor iPhone en iPad is, die op maximale prestaties draait.
In de video hieronder kun je zien hoe soepel DolphiniOS draait op iOS 14.2 zonder jailbreak met de native JIT-implementatie:
Er is een nieuwe versie van AltStore die compatibel is met JIT-apps die momenteel in bèta is, maar deze zal binnenkort beschikbaar zijn voor alle AltStore-gebruikers. Als u meer wilt weten over hoe u AltStore installeert en gebruikt, kunt u ons speciale artikel hierover lezen.
FTC: We gebruiken inkomen verdienen auto affiliate links. Meer.
Kijk naar 9to5Mac op YouTube voor meer Apple-nieuws: