macos - 32 位应用程序如何在 64 位 Mac 上运行?

标签 macos architecture x86 64-bit

我正在尝试收集有关 32 位应用程序如何在 64 位 Mac 上工作/运行的可能性的一些细节,因此编写的汇编代码是否会考虑 64 位工作?

最佳答案

你的问题很含糊。我会尽量澄清一些事情:

任何最新的 Mac 都有支持 32 位和 64 位执行模式的处理器。

OS X 内核可以在此类处理器上以 32 位或 64 位模式运行。在 10.6 及更早版本中,内核默认以 32 位模式运行。在10.7中,内核默认以64位模式运行。

应用程序及其相关库可以支持在 32 位、64 位或两者中运行。这与内核是否运行在 64 位完全无关(即:您可以在 32 位内核上运行 64 位应用程序,也可以在 64 位内核上运行 32 位应用程序)。

这样做的最终效果是,您可以为 32 位或 64 位编写代码,并且无论内核在做什么,它都能正常工作。也就是说,您的应用程序必须与自身同步;您不能在单个进程中混合使用 32 位和 64 位代码。

关于macos - 32 位应用程序如何在 64 位 Mac 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7414986/

相关文章:

assembly - 在 NASM 中使用 OR r/m32、imm32

ios - 如何在没有任何图标的情况下使用 NSAlert?

java - 如何在 Mac 上设置 Logback?

architecture - 为什么位数总是(?)2的幂?

architecture - 解析云代码结构

ios - NodeJS 作为 MVP 聊天服务的即时消息服务器

c++ - GCC 手册中提到的 "C++ ABI Specification"是什么?

c - 为什么X86提供一对除法和乘法指令?

linux - Git 从远程计算机 pull 一个存储库到本地计算机

java - 错误: "UnsatisfedLinkError: com.aparapi.internal.jni.OPENCLJNI.getPlatforms()" JNI configuration