"Po přechodu od Motoroly k PowerPC a následně k x86 jde o třetí významnou architektonickou revoluci u Applu"
Nezapomina se nahodou na MOS 6502? Jde sice o davnou historii, ale tento prechod byl myslim jeste vyznamnejsi nez nejake PPC->Intel->Apple-ARM, tady celou dobu bezi podobna architektura (Mach, XNU, na to navazane ObjC "Kity").
Vite nekdo jaka verze XCode a macOS 11 Big Sur podporuje ten M1 ?
Nevíte jestli bude Apple řešit zpětnou binární kompatibilitu (alespoň na přechodnou dobu).
To byl při přechodu vždy "majstrštyk" ... do nové architektury přepsali jen jádro a emulátor a zbytek postupně přidávali jako updaty ... zákazníci nepřišli o původní aplikace (pokud vývojář nestíhal překlad na novou platformu). V době přechodu na PPC to vypadalo jako zázrak.
Je tam "Rosetta 2", neni to emulator, ale binarni translator, maji tam "fat binaries", t.j. binarka ve ktere je Mach-O pro x86_64 i arm64. Nemam tuseni jak tam je udelane napojeni x86_64 kodu na arm64, do jake miry se pouzivaji ty nenativni knihovny, logika veci veli, ze by se mel co nejvice pouzivat ten arm64 kod.
S binarnimi translatory se daji delat velmi zajimave veci vc. ruznych optimalizaci, kdy prelozeny kod nemusi byt vubec pomaly. Kdyz tupe prelozite x86(32) na arm(32bit) tak je narust kodu cca 3-4x, z toho muzete obratem vyhazet ale 1/3 az 1/2 kodu uplne jednoduchym optimalizatorem. Co jsem zatim ale videl, tak se JIT optimalizaci zase tak moc nevyuziva, od cloveka ktery ma na svedomi treba JIT do Javy mi bylo receno, ze se to ukazalo nerentabilni ... a ve vyvoji se nepokracovalo, i kdyz byla spousta cest ke zkoumani.