Problemet är det applikationer är designade för att köras på specifika processorer och inte alla utvecklare har gjort allt arbete för att få sina appar att köras på Apple Silicon Macs. Mac-datorer med M1-teknik kan köras inbyggda, universella (där installationsprogrammet innehåller kod för Intel- och Apple-chips) och Intel-program.

Apple uppmuntrar utvecklare att släppa universella applikationer när det är möjligt och låter även Intel-applikationer köras på Apples kisel med hjälp av emuleringstekniken som Apple kallar Rosetta 2.

Vad är Rosetta 2?

Rosetta 2 är en emulator designad för att underlätta övergången mellan Intel- och Apple-processorer. Den översätter applikationer designade för Intel att köras på Apple Silicon.

Vissa applikationer (inklusive Microsoft Office-applikationer) översätts också första gången du kör dem. Detta behov av översättning vid första körningen innebär att applikationer kan starta något långsammare än normalt (upp till 20 sekunder i vissa fall), men du kommer inte att uppleva samma fördröjning nästa gång du kör applikationen. 'Ansökan.

Hela processen äger rum i bakgrunden och även om det kan ha en liten inverkan på applikationsprestanda, tyder tidiga rapporter på att prestandaförbättringen för bytet till M1-chipet mer än kompenserar för det.

Vad Apple säger

"Rosetta är en översättningsprocess som tillåter användare att köra applikationer som innehåller instruktioner", säger dess utvecklarsida. "Rosettas mål är att underlätta övergången till Apple-kisel, vilket ger dig tid att skapa en universell binär för din applikation. Det är inte en ersättning för att skapa en inbyggd version av din app. »

Vad är översättningen?

"Om en körbar fil endast innehåller Intel-instruktioner, startar macOS automatiskt Rosetta och påbörjar översättningsprocessen. När översättningen är klar startar systemet den översatta körbara filen istället för originalet. Men översättningsprocessen tar tid, så användare kan känna att översatta applikationer startar eller kör långsammare, säger Apple.

Rosetta kan också översätta dynamisk kod eller JavaScript om framstegen.

Kan jag köra ett x86-plugin med min applikation?

När du använder en Mac M1 kommer du att upptäcka att den alltid föredrar att köra arm64-instruktioner på Apples silikon. Ändå, ibland innehåller en applikation ARM- och X86-instruktioner, och i så fall kan användaren starta om programmet med hjälp av Rosetta-översättningen från fönstret Get Info. 'applikation i Finder. Välj appen, tryck på Kommando-I och markera rutan Öppna med Rosetta. Detta är bara riktigt användbart om du behöver köra ett gammalt plugin på en app som körs inbyggt på M1, till exempel.

Vem stöder Rosetta 2?

Alla Apple-applikationer och alla deras affärsapplikationer är redan kompatibla med M1-chipet.

Utvecklare skapar också universella applikationer som kommer att köras inbyggt på Intel och M1 Mac-datorer. Applikationer som ännu inte är tillgängliga native eller universellt kan kräva en liten uppdatering för att aktivera Rosetta 2-stöd, men kommer att fungera bra efteråt.

Nyckelappar som Word körs redan på M1 och Adobe utlovar en inbyggd M1-version av Photoshop i början av nästa år, med Lightroom som kommer "snart". Naturligtvis kan du även köra alla iOS-appar på M1-chippet, om utvecklarna tillåter det.

Vad kan inte Rosetta 2 översättas?

Rosetta kan inte översätta kärntillägg eller virtuella maskinapplikationer som virtualiserar x86_64-datorplattformar. Utvecklare bör vara medvetna om att Rosetta inte heller kan översätta AVX-, AVX2- och AVX512-vektorinstruktioner.

Lite historia

Apple har använt namnet Rosetta tidigare.

När han migrerade Mac-datorn från PowerPC till Intel-chips använde han något med samma namn för att utföra samma funktion för att aktivera PowerPC-applikationer på Intel-chips.

Även om namnet och syftet förblir desamma är det en stor skillnad mellan denna form av Rosetta och den Rosetta vi använder idag, eftersom Apple utvecklade målprocessorn, vilket innebär att den tänkte på Rosettas behov när man designade M1.

Detta betyder att den kunde bygga några av de element som var nödvändiga för att ge detta stöd på själva chippet. Det är därför vissa applikationer som körs i Rosetta-emulering på en Apple Silicon Mac körs snabbare än på Intel, för trots att de har en låg prestandapåverkan drar de fortfarande nytta av de enorma prestandafördelarna som ger byte. till M1-processorer.

Hur ser föreställningen ut?

Som jag förklarade här har jag använt en Mac mini M1 ett tag. Enligt min erfarenhet fungerar de flesta applikationer lika bra (ofta mycket snabbare) när de körs på M1-chippet som de gör på motsvarande Intel-drivna Mac.

Det bör också noteras att dessa processorer erbjuder utmärkt minneshantering. Apple har utvecklat en teknik som kallas Unified Memory Architecture (UMA) som delar minne mellan alla processorfunktioner. Eftersom minne, processor och andra delar av systemet finns på chippet kan du förvänta dig bra prestanda. Detta märks särskilt i grafikintensiva applikationer, som jag tror går ännu snabbare än tidigare.

Hur länge kommer Rosetta 2 att finnas tillgängligt?

Vi vet inte om Rosetta 2 kommer att fortsätta vara tillgänglig.

historiskt Rosetta ingick i OS X 10.4.4 Tiger, blev ett nedladdningsbart alternativ i OS X 10.6 Snow Leopard och som stöd, men försvann följande år, även om övergången i det här fallet slutfördes tidigare. än väntat när Apple slutade sälja Mac-datorer baserade på den äldre arkitekturen.

Apple har åtagit sig att slutföra övergången mellan Intel och Apple Silicon-processorer inom två år, vilket tyder på att det kommer att finnas där för att stödja detta och kommer att fortsätta att finnas tillgängligt i senare versioner. Apple vet att folk alltid kommer att köpa nya Mac-datorer med Intel-processorer under denna övergång.

Med detta i åtanke verkar det troligt att tro att Apple kommer att upprätthålla stöd för Rosetta 2 på macOS fram till minst 2023. För mer information om Rosetta, se denna anteckning från Apples utvecklare.


 

Dela detta