Mac OS X Leopard (10.5.x) 是 32 位还是 64 位?
我可以处理超过 4GB 的 RAM 吗?
答案1
简短的回答是 Leopard 是 32 位和 64 位的混合。
- Tiger 增加了对低级系统库的 64 位支持,使得非 GUI 应用程序也能支持 64 位。
- Leopard 在整个系统框架中添加了 64 位支持,因此任何应用程序都可以是 64 位的。
- Snow Leopard 将添加 64 位内核和 Apple 提供的众多 64 位用户应用程序。当然,所有框架和库的 32 位版本仍然可用,但在两种模式下运行应用程序需要加载两个堆栈,效率低下,这也是 Apple 强烈鼓励开发人员加入并使用 64 位版本构建应用程序的一个重要原因。
因为 10.5 中的内核仍然是 32 位的,所以更大的可寻址内存量是通过一些技巧实现的。目前我还不知道确切的细节,但我认为在 Leopard 下你只能寻址 4 GB 的物理内存 — 我相信 64 位内存空间会溢出到磁盘上的虚拟内存,就像 32 位进程超出安装的 RAM 量时一样。
编辑:我对虚拟内存方面的看法是错误的。32 位内核能寻址超过 4 GB 的内存,但添加大量物理内存会占用内核 32 位内存空间的很大一部分(约 1/3),这(在极限情况下)会严重影响内核性能。显然,如果您的应用程序使用的内存多于可用内存(无论是 32 位还是 64 位模式),则操作系统必须映射虚拟内存。
除此之外,Snow Leopard 中的 64 位内核还通过大幅增加其可使用的地址空间(包括用于描述物理内存的空间)为内核本身提供了喘息空间。大多数人目前还没有达到这一限制,但随着安装的 RAM 在不久的将来增加,他们就会开始遇到这种情况。
答案2
答案3
所有 x86、x86-64 和 PowerPC 平台均受支持。所有新款 Mac 都采用 x64 平台。
Snow Leopard 不再支持 PowerPC。
如果您在 x64 上运行,那么您可以处理超过 4GB 的 RAM。
即使是 64 位,您也可以成功运行 64 位和 32 位应用程序。
答案4
之所以如此令人困惑,是因为 Mac OS X 是唯一一款可以在长模式兼容模式下运行大部分 32 位内核,同时又可以运行原生 64 位应用程序(当然是在 64 位模式下)的操作系统。因此,Mac OS X Snow Leopard 实际上有三种模式。我的博客上有一篇关于它的文章: http://yuhongbao.blogspot.com/2009/09/mac-os-xs-64-bit-modes.html