在MacOS下,您可以为名为“在32位模式下打开”的32位可执行文件更改一个小选项。它不会直接起作用吗?它可以工作,但对于某些应用程序,您必须选择此选项才能正常运行。这在Safari中很常见,其中一些附加组件需要32位环境。
我无法理解是什么让32位可执行文件无法直接在64位运行,那么32位模式究竟发生了什么变化呢?
答案 0 :(得分:3)
这真的只是历史感兴趣。在从32位到64位的过渡期中,许多应用程序被构建为通用的,其中3个或有时甚至4个架构组合成一个胖二进制(又名“通用二进制”),通常为ppc,x86和x86-64。在32位x86环境中,将使用32位x86可执行文件。在64位x86-64位环境中,将使用64位可执行文件。但是在某些情况下,即使在64位x86-64环境中,您也可能希望使用32位x86可执行文件,例如如果你提到你有旧版插件的地方,这些插件只有32位,不能用于64位可执行文件。因此可选择以32位模式启动应用程序。
显然,32位应用程序使用32位API并具有32位地址空间,而64位应用程序具有64位地址空间并使用64位API。