iOS 14.2 przynosi obsługę kompilacji JIT, która umożliwia emulację aplikacji przy pełnej wydajności

Możecie znać niektóre nieoficjalne aplikacje iOS, które oferują pewien rodzaj emulacji. Aplikacje te działają w oparciu o hacki i exploity, co znacznie obniża wydajność – ale to ma się wkrótce zmienić. Apple po cichu wprowadził wsparcie dla Just-In-Time (JIT) kompilacji na iOS 14.2, który pozwoli emulacji aplikacje do uruchomienia z pełną prędkością na iPhone i iPad.

Riley Testut, deweloper za AltStore, podzielili się z 9to5Mac więcej szczegółów na temat tego, jak ta zmiana wpłynie te nieoficjalne aplikacje, które oferują emulację konsoli i maszyn wirtualnych. Ale najpierw pozwólcie mi krótko wyjaśnić, czym jest JIT i jak działa na iOS.

JIT, czyli Just-In-Time compilation, to sposób na uruchomienie oprogramowania, które zostanie skompilowane w trakcie jego wykonywania, podczas gdy tradycyjne oprogramowanie jest w pełni skompilowane przed wykonaniem. Z JIT, kod źródłowy jest tłumaczony na natywny kod maszyny w czasie rzeczywistym.

Apple nigdy nie oferował oficjalnego wsparcia dla kompilacji JIT na iOS, ale niektórzy deweloperzy znaleźli sposoby, aby uruchomić go z hackami, które przyszły z kosztem posiadania kilku błędów i niskiej wydajności. Te exploity zostały jednak całkowicie usunięte na iOS 14. Przynajmniej do teraz.

Jak opisuje Testut, Apple dodało wsparcie dla kompilacji JIT w iOS 14.2 beta 2 – ale nigdy nie zostało to publicznie wspomniane przez firmę. Wsparcie było utrzymywane przez cały czas trwania bety i zostało zachowane w ostatecznym wydaniu. Deweloper wierzy, że jest to oficjalna implementacja, a nie błąd Apple, ale nie ma sposobu, aby to potwierdzić na razie.

Z obsługą kompilacji JIT na iOS 14.2, aplikacje emulacyjne mogą teraz działać z pełną prędkością bez hacków, jailbreak i innych kompromisów.

Na przykład, z JIT Delta może w teorii emulować bardziej wydajne systemy, takie jak PS2, GameCube, i Wii; bez JIT, musielibyśmy czekać jeszcze kilka lat, zanim sprzęt był zdolny do tego. Na początku byłem sceptyczny, ale teraz skłaniam się bardziej ku myśleniu, że to była celowa zmiana.

Jednakże nie oznacza to, że zobaczysz aplikacje emulujące w App Store, a nawet każdą inną aplikację wykorzystującą JIT. Testut powiedział nam, że obecna implementacja działa tylko dla aplikacji sideloaded, które są zwykle instalowane za pośrednictwem Xcode i innych narzędzi deweloperskich zamiast App Store. Innymi słowy, jest to funkcja przeznaczona dla deweloperów z celów debugowania.

Wątpię, aby ograniczenie JIT tylko do aplikacji sideloaded było intencją stojącą za tym (i bardziej prawdopodobne jest związane z potrzebą aplikacji do uruchamiania niepodpisanego kodu podczas debugowania z Xcode), ale byłbym ciekawy, czy to ograniczenie pozostaje długoterminowe.

Ale jeśli masz AltStore, wkrótce będziesz mógł cieszyć się aplikacjami takimi jak UTM, który oferuje maszyny wirtualne na iOS, i DolphiniOS, który jest w zasadzie emulatorem GameCube i Wii dla iPhone’a i iPada, działające z maksymalną wydajnością.

W wideo poniżej, można zobaczyć, jak płynnie DolphiniOS działa na iOS 14.2 bez jailbreaka z wykorzystaniem natywnej implementacji JIT:

Dzięki tej zmianie w iOS 14.2 – i w połączeniu z nowym uprawnieniem „Extended Virtual Addressing” – możliwe jest teraz emulowanie gier GameCube i Wii z prędkością 100% BEZ jailbreaka lub korzystania z prywatnych uprawnień 😱 https://t.co/gOIBcxCZ0K pic.twitter.com/AF548pvKPl

– Riles 🦄 (@rileytestut) November 5, 2020

Istnieje nowa wersja AltStore kompatybilna z aplikacjami JIT, która jest obecnie w fazie beta, ale będzie dostępna dla wszystkich użytkowników AltStore już wkrótce. Jeśli chcesz dowiedzieć się więcej o tym jak zainstalować i używać AltStore, sprawdź nasz specjalny artykuł na ten temat.

FTC: Używamy automatycznych linków partnerskich do zarabiania. Więcej.

Sprawdź 9to5Mac na YouTube, aby uzyskać więcej wiadomości Apple:

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.