Rosetta (szoftver)

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2022. május 24-én felülvizsgált verziótól ; az ellenőrzések 2 szerkesztést igényelnek .

A Rosetta  egy dinamikus bináris fordító , amelyet az Apple Inc fejlesztett ki operációs rendszereihez ( macOS ) a különböző utasításkészlet-architektúrák közötti alkalmazások kompatibilitása érdekében . Ez átmeneti időszakot ad a fejlesztőknek és a fogyasztóknak, amely alatt frissíthetik alkalmazásszoftvereiket , hogy újabb hardveren fussanak úgy, hogy más architektúrára „migrálják”. A "Rosetta" név utalás a Rosetta-kőre , egy olyan műtárgyra, amely lehetővé tette az egyiptomi hieroglifák fordítását. [egy]

A Rosetta első verziója, amelyet 2006-ban mutattak be a Mac OS X Tiger összetevőjeként , lehetővé teszi a PowerPC alkalmazások futtatását Intel-alapú Mac számítógépeken . A második verzió, amelyet 2020-ban mutattak be a macOS Big Sur részeként, része a Mac átállásának az Intel processzorokról az ARM - alapú Apple szilícium processzorokra . [2]

Fejlesztés

Az Apple négy processzorarchitektúra sorozatot használt a Macintosh számítógépek sorában , nevezetesen a Motorola 68000 sorozatot , a PowerPC sorozatot , az Intel Core sorozatot és a saját ARM típusú processzorsorozatát . Minden egyes átállás a korábbi architektúrára épített szoftvereket nem kompatibilissé tette az újjal, így szükség volt olyan szoftverekre, amelyek lehetővé teszik az új platform számára, hogy emulálja az előzőt.

Amikor a vállalat bemutatta első PowerPC rendszereit, az Apple a 68000-es sorozatú rendszer emulálásához szoftvert is beépített a 7.1.2-es és újabb verziójú operációs rendszerbe. Ez az emulátor kihasználja a PowerPC processzorokba épített funkciókat, és eléri az azon futó operációs rendszer legalacsonyabb szintjeit. ugyanolyan szinten, mint a Mac OS nanokernel , és szorosan kapcsolódik hozzá. Ez azt jelenti, hogy a nanokernel képes a PowerPC megszakítások elkapására , 68 000 megszakításokká alakítására (majd vegyes módba vált, ha szükséges), majd 68 000 kódot futtat a megszakítások kezelésére. Ez lehetővé teszi, hogy a 68k-s sorokat és a PowerPC-kódot ugyanabban a vastag binárisban átlapolja .

Rosetta (váltás Intelre)

Az Apple 2006-ban adta ki a Rosetta első verzióját, amikor megkezdte Macintosh vonalának átállítását PowerPC - ről Intel processzorra. Eredetileg a Mac OS X v10-ben volt benne. 4.4 „Tiger”, az a verzió, amelyet az első Intel-alapú Mac-ekkel adtak ki, és lehetővé teszi számos PowerPC-alkalmazás módosítás nélkül futtatását Intel-alapú Mac-eken. A Rosetta a QuickTransit technológián [3] alapul , nincs felhasználói felülete , és szükség szerint fut a Felhasználó értesítése nélkül, így az Apple a "legcsodálatosabb szoftvernek, amit valaha látni fog" úgy jellemezte. A Rosetta alapértelmezés szerint nincs telepítve a Mac OS X v10 rendszerben. 6 " Snow Leopard ", de telepíthető opcióként elérhető. A Rosetta nem tartalmazza és nem támogatja a Mac OS X v10-et. 7 "Lion" vagy újabb verzió, amely ezért nem tudja futtatni a PowerPC alkalmazásokat. [négy]

Előnyök

Az Intel és a PowerPC processzorok közötti nagy architektúrabeli különbségek miatt a Rosetta magasabb szinten fut, mint a 68000 emulátor felhasználói szintű programként, amely csak felhasználói szintű kódot képes elkapni és emulálni. Lefordítja a G3, G4 és AltiVec utasításokat , de nem a G5 utasításokat. Bár a PowerPC-alapú számítógépekhez készült legtöbb kereskedelmi program kompatibilis volt ezekkel a követelményekkel (a G4-rendszereket akkoriban még széles körben használták), minden olyan alkalmazást, amely speciális G5-utasításokra támaszkodott, a fejlesztőknek módosítaniuk kellett, hogy a Rosetta által támogatott számítógépeken futhassanak. Intel. Az Apple azt mondta, hogy az erős felhasználói interakciót igénylő, de alacsony számítási igényű alkalmazások (például szövegszerkesztők ) a legalkalmasabbak a Rosetta-val való használatra, míg a nagy számítási igényű alkalmazások (például játékok, AutoCAD vagy Photoshop) nem.

Támogatási korlátozások

A Rosetta a következőket sem támogatja:

Az asztali környezet, és ezáltal minden olyan, Mac OS 9 vagy korábbi kódhoz épített alkalmazás, amely beilleszti a beállításokat a Rendszerbeállítások ablaktáblába. Finomszemcsés kivételkezelést igénylő alkalmazások Képernyőkímélő Kernelbővítmények és tőlük függő alkalmazások Kapcsolódó Java alkalmazások vagy Java alkalmazások JNI-vel a Rosetta nyelvre lefordított alkalmazások Java kisalkalmazásai azt jelentik, hogy a Java kisalkalmazások betöltéséhez a natív Intel webböngésző alkalmazást kell használni, nem a régi PowerPC verziót.

Rosetta 2 (váltás ARM/Apple szilíciumra)

2020-ban az Apple bejelentette a Rosetta 2-t, amely a macOS Big Sur része lesz, és segít a Mac átállásában az Apple szilíciumra az Intel processzoroktól . A Rosettában elérhető JIT (just-in-time) fordítási támogatás mellett a Rosetta 2 tartalmazza az idő előtti fordítási (AOT) fordítási támogatást [5] , amikor az alkalmazás telepítve van.

Szakértői vélemények

A Rosetta 2 teljesítményét nagyon dicsérték. Egyes benchmarkokban a Rosetta 2 jobban teljesített, mint az Intel régi, szabadalmaztatott hardveres Mac-jei. A Rosetta 2 sok programnál működik, de nem mindegyiknél, van, amelyik egyáltalán nem, vagy „lomhaságot” jelez. Sok program kompatibilissé tehető az új Mac-ekkel a szoftvergyártó általi újrafordítással, ami gyakran egyszerű feladat, míg egyes programok esetében (például az összeállítási kódot tartalmazó vagy gépi kódot generáló programok esetében ) a változtatások nem egyszerűek vagy automatizáltak.

Felhasználói élmény

Az első verzióhoz hasonlóan a Rosetta 2 rendszerint nem igényel felhasználói beavatkozást. Amikor a felhasználó először próbál meg csak Intel-alkalmazást futtatni, a macOS felszólítja a Rosetta 2 telepítésére, ha az összetevő nem érhető el. Az x86 -os programok későbbi indítása a fordításon keresztül automatikusan megtörténik. Lehetőség van arra is, hogy az általános bináris Intel kódként működjön a Rosetta 2-n keresztül, akár ARM alapú gépen is .

Jegyzetek

  1. A Core Duo iMac-ek debütálnak, gyors új  chipek . Macworld (2006. január 28.). Letöltve: 2020. december 9. Az eredetiből archiválva : 2020. december 6..
  2. Tom Warren. Az Apple idéntől kezdődően saját processzorokra cseréli a Mac-  eket . The Verge (2020. június 22.). Letöltve: 2020. december 9. Az eredetiből archiválva : 2020. június 22.
  3. Stephen Shankland. Az Apple Rosetta : Transitive  agya . CNET . Letöltve: 2020. december 9. Az eredetiből archiválva : 2016. március 1.
  4. Mac OS X 10.7 Lion: hiányzik a Front Row, a Rosetta és a Java  futtatókörnyezet . AppleInsider . Letöltve: 2020. december 9. Az eredetiből archiválva : 2021. március 10.
  5. Keynote – WWDC 2020 –  Videók . Apple fejlesztő . Letöltve: 2020. december 9. Az eredetiből archiválva : 2020. szeptember 18.