4 ms·
A reference for Rosetta being a translation, rather then emulation. "Rosetta is a translation process" https://developer.apple.com/documentation/apple_silicon
by spearo77 6y ago
A reference for Rosetta being a translation, rather then emulation.
"Rosetta is a translation process"
https://developer.apple.com/documentation/apple_silicon/about_the_rosetta_translation_environment?language=objc https://developer.apple.com/documentation/apple_silicon/abou...
- saagarjha 6y agoRosetta is an emulator.
- kergonath 6y ago“an emulator is hardware or software that enables one computer system (called the host) to behave like another computer system” (Wikipedia). This is not the case for Rosetta 2, which does a translation pass before running the generated ARM binary. No x86 code is run.
- userbinator 6y agoThat's just the difference between a JIT and not - something like QEMU in the other direction doesn't "run" ARM code either, but in the end it really doesn't matter and is only a minor pedantry.
- icedchai 6y agoI'd argue that "translation" is an implementation detail of emulation. Your translated app still thinks it is x86-64 (witnessed by running "uname -a" in a Rosetta terminal.)