MacOS13支持翻译Linuxx86_64应用程序,使用条件苛刻WWDC上宣布的。但在几天前提供给开发者的一份文档中,我们也了解到苹果在发布会上根本没有提及的一些事情。在WWDC上,Apple发布了macOS13Ventura。macOS13中一个有趣的技术变化是能够在配备AppleSilicon的Mac电脑上使用苹果的Rosetta软件在ARMLinux虚拟机上运行Linuxx86_64软件(分层嵌套,一口可能需要读者读两遍)。Rosetta是Apple为macOS提供的编译器软件,最初帮助Apple从PowerPC转向IntelCPU。2020年macOS11.0BigSur内置的Rosetta2是苹果从IntelCPU向ARM过渡的重要一环,让原本在Intel平台上开发的软件能够在基于ARM架构平台的Mac电脑上流畅运行。用户可以顺利过渡。在带有AppleSilicon芯片的macOS13和更高版本的Mac上,虚拟化框架支持ARMLinux虚拟机(VM)中的Rosetta。Rosetta是一个翻译过程,允许用户在AppleSilicon上运行包含x86_64指令的应用程序。在macOS中,这允许为基于Intel的Mac构建的应用程序在AppleSilicon上无缝运行;Rosetta可以为ARMLinux虚拟机中的IntelLinux应用程序做同样的事情。也就是说,用户在使用ARMLinux虚拟机时,除了可以运行原本支持的ARM架构软件外,还可以获得强大而众多的Linuxx86_64软件支持。这种Rosetta访问是通过macOS虚拟化框架完成的,用户只能通过ARMLinux虚拟机使用Linuxx86_64应用程序,不允许用户直接在AppleSiliconMacs上使用Linuxx86_64应用程序。它也不能在macOS之外运行——也就是说,Rosetta不能在非AppleARMLinux或支持M1芯片的AsahiLinux上运行。该技术的安装和可用性测试可以在苹果官方文档中找到。目前还不清楚这个用于Linuxx86_64的Rosetta在实践中的效果如何,以及它与用于类似目的的开源Box86/Box64和FEX-Emu解决方案相比如何。相比之下,它的性能和可靠性有好有坏。此外,如果该技术适用于图形程序,它可能反过来允许用户在AppleSilicon上间接运行Linux游戏。本文转自OSCHINA本文标题:macOS13支持转译Linuxx86_64应用,使用条件苛刻
