为什么 64 位的应用程序这么少?

为什么 64 位的应用程序这么少?

可能重复:
32 位系统与 64 位系统

我意识到我使用的几乎每个应用程序都是针对 32 位处理器的。考虑到现在市场上几乎所有的 PC 似乎都是 64 位的,为什么大多数程序仍然这样。使用 64 位程序有什么真正的优势吗?

答案1

在 Windows(可能还有其他 64 位操作系统)上,支持 32 位应用程序。因此,32 位应用程序的一个可能优势是可移植性更高。

64 位应用程序的主要优势在于它可以以平面地址空间的形式访问 4GB 或更多的内存。但是,很少有应用程序能从中受益。64 位应用程序的缺点在于每个指针占用 8 个字节的内存,而不是 4 个字节。这意味着程序代码和数据结构占用更多内存,这意味着它们可能会更慢。慢多少因人而异。可能的由于内存对齐问题,64 位应用程序的速度会稍微快一些,但我猜测更大的内存占用将在一段时间内超过这一点。

随着处理器对 64 位代码的优化程度越来越高,对 32 位代码的优化程度越来越低,随着时间的推移,节省的成本与麻烦相比越来越微不足道,这些问题将变得与 16 位代码对只需要 64K 内存的应用程序可能略微更好的效率一样无关紧要。在某种程度上,这种情况已经发生了,但只要很多人继续使用 Windows XP,可移植性问题就会一直存在。

在 Linux 上,“旧的 32 位应用程序”实际上不成问题。由于大多数软件都有源代码,因此即使对于旧应用程序,通常也很容易获得 32 位或 64 位编译。如果您使用的是 64 位 Linux,则您的所有应用程序可能都编译为 64 位代码 - 尽管我每天都使用 64 位 Linux,但我还没有检查 64 位 Linux 中是否包含任何 32 位二进制支持,因为这不成问题。

答案2

Windows XP 仍占 Windows 安装基数的近 50%。如果加上 32 位 Vista 和 32 位 Windows 7 安装,则 60-70% 的 Windows PC 运行的是 32 位操作系统。

点击此处查看 2011 年 5 月 Windows 安装基数统计

在此处输入图片描述

软件公司不会发布 64 位软件,除非市场上有足够多的份额采用 64 位操作系统,因为开发 64 位版本的软件需要大量资源。此外,32 位软件在 64 位 Windows 上运行良好,因此没有真正的动力转向 64 位,除非是像 PhotoShop 这样的小众应用程序,它们受益于更大的可用内存。

答案3

据我所知有两个主要原因。

  1. 兼容性,如果公司继续支持 32 位,那么他们仍然可以向以下用户销售不能由于系统老旧或不兼容而升级或惯于升级,因为“成本太高”或“不能适用于所有东西”或者他们能想出的任何其他薄弱的理由。

  2. 64 位虽然是一个很大的优势,而且绝对值得继续使用,但对于绝大多数程序来说,它实际上并不是必需的。电子表格真的需要 >4GB 的 RAM 吗?不需要。它会从 64 位提供的边际速度提升中受益吗?同样,不需要。

64 位是未来的发展方向,但需要几年的时间才能慢慢摆脱 32 位的束缚并继续前进。

答案4

问题只是市场份额和使代码兼容 64 位的成本。在某个时候,当有足够多的人使用 64 位时,越来越多的公司会发现他们需要为他们进行营销和生产。

我还要说的是,大多数仍然不是 64 位的...许多人和企业仍然使用 32 位,通常是因为他们担心不兼容。

相关内容