Mar*_*son 58 windows operating-system 32bit-64bit
这个问题是 2012 年的。如果您是在 2019 年或之后阅读本文,那么答案确实是:否。2019 年没有充分理由维护 32 位桌面操作系统。
原问题如下:
服务器软件现在只是 64 位的(自 Server 2008 R2 for Windows,甚至更早的 Exchange 和 Sharepoint),甚至 Ubuntu 也在推动您远离 32 位版本的服务器操作系统。
但是,是否有任何好的、可量化的理由来维护 32 位桌面操作系统?我们正在为少数(不幸的?)早期采用者准备我们的 Windows 8 映像。
我们的大多数台式电脑都有 4GB 或更少的 RAM,但我希望不再需要为支持 32 位风格的操作系统而烦恼。
我有什么理由应该这样做?
tyl*_*erl 58
在某些用例中,32 位可能会稍微快一点——更小的地址意味着更紧凑的代码,这意味着更高的缓存效率。在我看到的基准测试中,这种效率往往被 64 位在繁重计算环境中更高的计算效率所掩盖。但是 32 位实际上偶尔会在某些基准测试中获胜。天啊。软件的年龄很重要,因为新版本利用了旧版本没有的 64 位内容。
更紧凑的代码意味着更少的磁盘空间。只需下载 64 位和 32 位风格的您最喜欢的操作系统的 ISO 即可查看差异。这不是微不足道的。一旦您解压缩二进制文件,它也会更多。正如 OrangeDog 指出的那样:大部分空间消耗来自于 64 位操作系统除了 64 位库之外还提供 32 位库的事实。
您仍然可以更好地兼容 32 位的旧组件和软件。这在在主机上动态编译但同时拉入第 3 方二进制库的系统中尤为明显。Microsoft 的 .NET 框架就是一个很好的例子:虽然这些程序理论上是独立于架构的,但只要你链接到一个本地二进制文件,你就会绑定到一个或另一个架构上。许多开发人员甚至不知道这种情况正在发生,并且在不进行一些调整以明确指示 .NET 在 32 位模式下运行的情况下,交付的生产组件将无法在 64 位系统上运行。大多数人不知道如何做到这一点。
正如 Daniel B 所指出的:在 64 位机器上进行 Windows .NET 开发会让您面临令人沮丧的不一致问题,在某些情况下,操作系统会屏蔽异常。
遗留硬件。您不能在 64 位内核上运行 32 位驱动程序。
对于大多数人来说,这些加起来都不是表演的绊脚石。不过,您必须决定这些因素如何影响您的环境。
Hen*_*nes 29
我能想到保留 32 位桌面操作系统的唯一原因是,如果您使用旧的 16 位(例如 DOS)程序并且您没有支持 Windows Virtual PC 的 Windows 版本。
(即使那样,我也会安装 64 位操作系统并使用诸如 DOSbox 之类的东西)。
编辑:实际上还有另一个原因:硬件无法处理超过 4GB 的地址空间。例如 FireWire 尝试执行 DMA。或者任何没有 64 位驱动程序的(旧)硬件。
Mic*_*ton 17
任何可以运行 Windows 8 的东西都已经是 64 位的了,除非你碰巧有一些第一代 Intel Atom 上网本(我很怀疑)。这是我能想到的唯一事情。
AMD 于 2003 年发布了第一个支持 64 位的 Opteron;从那时起,他们制造的几乎所有处理器都支持 64 位。
一年之后,英特尔于 2004 年发布了第一款 64 位 Xeon (Nocona),并在 2006 年扩展到几乎整个产品线。除了前面提到的早期 Atom 芯片外,今天的每个英特尔处理器都是 64 位的。
如果您对古代历史感兴趣,维基百科有一个细分的处理器列表。
与古代软件/硬件的兼容性。
如果一切都在 x64 下工作,我不会打扰 32 位。
| 归档时间: |
|
| 查看次数: |
8056 次 |
| 最近记录: |