iOS 14.2 understøtter JIT-kompilering, hvilket gør det muligt at bruge emuleringsapps med fuld ydeevne

Du kender måske nogle uofficielle iOS-apps, der tilbyder en form for emulering. Disse apps kører baseret på hacks og exploits, hvilket reducerer ydeevnen betragteligt – men det er ved at ændre sig. Apple har i al stilhed indført understøttelse af Just-In-Time-kompilering (JIT) i iOS 14.2, hvilket vil gøre det muligt for emuleringsapps at køre med fuld hastighed på iPhone og iPad.

Riley Testut, udvikleren bag AltStore, delte flere detaljer med 9to5Mac om, hvordan denne ændring vil påvirke disse uofficielle apps, der tilbyder konsol- og virtual machine-emulering. Men lad mig først kort forklare, hvad JIT er, og hvordan det fungerer på iOS.

JIT, eller Just-In-Time-kompilering, er en måde at køre software på, som vil blive kompileret under udførelsen, mens en traditionel software er fuldt kompileret, før den udføres. Med JIT oversættes kildekoden til maskinens native kode i realtid.

Apple har aldrig tilbudt officiel understøttelse af JIT-kompilering på iOS, men nogle udviklere har fundet måder at køre det på med hacks, hvilket kom med den pris, at der var flere fejl og lav ydeevne. Disse exploits er dog blevet helt fjernet på iOS 14. I hvert fald indtil nu.

Som beskrevet af Testut har Apple tilføjet understøttelse for JIT-kompilering i iOS 14.2 beta 2 – men dette er aldrig blevet offentligt nævnt af virksomheden. Understøttelsen blev opretholdt i alle betaerne og blev bibeholdt i den endelige version. Udvikleren mener, at dette er en officiel implementering snarere end en fejl fra Apples side, men der er ingen måde at bekræfte dette på indtil videre.

Med understøttelse af JIT-kompilering i iOS 14.2 kan emuleringsapps nu køre med fuld hastighed uden hacks, jailbreak og andre kompromisser.

Med JIT kan Delta for eksempel i teorien emulere mere kraftfulde systemer som PS2, GameCube og Wii; uden JIT skulle vi vente flere år endnu, før hardwaren var i stand til det. I første omgang var jeg skeptisk, men hælder nu mere til at tro, at dette var en tilsigtet ændring.

Det betyder dog ikke, at du vil se emuleringsapps i App Store, eller endda andre apps, der bruger JIT. Testut fortalte os, at den nuværende implementering kun fungerer for sideloadede apps, som normalt installeres via Xcode og andre udviklerværktøjer i stedet for App Store. Det er med andre ord en funktion, der er beregnet til udviklere med debuggingformål.

Jeg tvivler på, at det var hensigten at begrænse JIT til kun sideloadede apps (og at det mere sandsynligt er bundet til behovet for apps til at køre usigneret kode, når de debugges med Xcode), men jeg vil være nysgerrig efter at se, om denne begrænsning forbliver på lang sigt.

Men hvis du har AltStore, vil du snart kunne nyde godt af apps som UTM, der tilbyder virtuelle maskiner på iOS, og DolphiniOS, som grundlæggende er en GameCube- og Wii-emulator til iPhone og iPad, der kører med maksimal ydelse.

I videoen nedenfor kan du se, hvor smidigt DolphiniOS kører på iOS 14.2 uden jailbreak ved hjælp af den native JIT-implementering:

Takket være denne ændring i iOS 14.2 – og kombineret med den nye rettighed “Extended Virtual Addressing” – er det nu muligt at emulere GameCube- og Wii-spil med 100 % hastighed UDEN at jailbreake eller bruge private rettigheder 😱 https://t.co/gOIBcxCZ0K pic.twitter.com/AF548pvKPl

– Riles 🦄 (@rileytestut) November 5, 2020

Der er en ny version af AltStore, der er kompatibel med JIT-apps, som i øjeblikket er i beta, men den vil snart være tilgængelig for alle AltStore-brugere. Hvis du vil vide mere om, hvordan du installerer og bruger AltStore, kan du læse vores særlige artikel om det.

FTC: Vi bruger indtjeningsgivende automatiske affilierede links. Mere.

Kig ind på 9to5Mac på YouTube for at se flere Apple-nyheder:

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.