我们正在努力决定确保我们的软件在32位模式下运行良好。(这是必须处理大型数据集的科学软件,因此确保其运行良好不仅意味着构建通用二进制文件,还要围绕地址空间限制进行设计。)
问:在最近的Mac上销售的那一年,开箱即用,无法运行64位应用程序?
通过“开箱即用”,我的意思是在天真的用户手中,不会升级操作系统,选择不同的内核,或以任何重要的方式更改默认的系统配置。
我们正在努力决定确保我们的软件在32位模式下运行良好。(这是必须处理大型数据集的科学软件,因此确保其运行良好不仅意味着构建通用二进制文件,还要围绕地址空间限制进行设计。)
问:在最近的Mac上销售的那一年,开箱即用,无法运行64位应用程序?
通过“开箱即用”,我的意思是在天真的用户手中,不会升级操作系统,选择不同的内核,或以任何重要的方式更改默认的系统配置。
Answers:
编辑:基于对问题和答案的评论,我认为Mac OS X v10.6:使用64位内核的Mac链接更加相关。
基本上,只有2010年中期的Mac Pro,2011年初的MacBook Pro和2011年中期的iMac默认使用Snow Leopard在64位模式下启动。自Lion(2011年中)以来,每台新Mac仅为64位。
所以回答你的问题:
在哪一年,最后一台没有能力(没有用户调整)运行64位软件的Mac 出售了?
==> 2011
编辑2:正如Vebjorn Ljosa在评论中提到的,让内核以32位或64位模式运行对你的二进制文件没什么影响,所以你可以假设在2007年中期之后出售的Mac将运行64位应用程序(基于下面的数据)。
所以看起来最后一款只售32位处理器的Mac是2006年末Mac mini。
在这方面,苹果在切换到英特尔处理器时“退缩”了一点。当时,所有基于G5 PPC的Mac都是64位,第一款Core-Duo的推出带来了新的32位Mac,当时他们已经逐步淘汰了32位。不久。
我清楚地记得史蒂夫·乔布斯在2005年WWDC上的主题演讲,抱歉地向英特尔解释了这一举动,主要是因为“英特尔向他提出了坚实的处理器路线图,而不是IBM对低能耗桌面计算的兴趣下降”。
最后,我的朋友,如果你正在开发一个应用程序,你可以非常自信地忘记32位。Xcode的Mac目标“标准架构”仅为64位,Apple已经在几年内忽略了32位的Obj-C运行时。
这意味着 - 没有ARC,没有属性的自动合成,脆弱的isa对象等等。构建Universal或32bit会对您的开发施加严重限制。