【发布时间】:2011-05-03 22:27:01
【问题描述】:
显然,您可以在 64 位 Windows 系统(Vista 或 7)上安装 32 位和 64 位编译的应用程序。
两个版本都可以在 64 位操作系统上运行的原因是什么?在 64 位操作系统上安装 64 位应用程序是一种好习惯吗?将 32 位应用程序与 64 位操作系统相结合有什么优点/缺点?
谢谢!
【问题讨论】:
标签: windows-7 windows-vista installation 32bit-64bit
显然,您可以在 64 位 Windows 系统(Vista 或 7)上安装 32 位和 64 位编译的应用程序。
两个版本都可以在 64 位操作系统上运行的原因是什么?在 64 位操作系统上安装 64 位应用程序是一种好习惯吗?将 32 位应用程序与 64 位操作系统相结合有什么优点/缺点?
谢谢!
【问题讨论】:
标签: windows-7 windows-vista installation 32bit-64bit
根据实际实现,32 位应用程序需要一些特殊处理才能在 64 位操作系统上运行,而 64 位应用程序将在 64 位操作系统上“本地”运行,因此应该“更好”运行(例如“更好”的各种值 - 例如访问更多内存)。这种“特殊处理”可能只是运行指令集的一个子集,但它需要编组等。
因此,在可用的情况下安装 64 位版本的程序是有意义的。
但是,允许 32 位程序运行具有商业意义,因为 32 位应用程序远多于 64 位应用程序。随着时间的推移,仍在销售的应用程序将被升级,并且未来版本的 Windows 可能会不支持 32 位程序(与 16 位程序一样)。
【讨论】:
两个版本都可以在 64 位操作系统上运行的原因是什么?
如果操作系统无法运行任何旧的(32 位)应用程序,那么没有人愿意使用它。所以他们必须想办法。
在 64 位操作系统上安装 64 位应用程序是一种好习惯吗?
通常是的,它们可以使用更多内存并且运行速度可能会更快一些。但是,64 位应用程序无法调用 32 位 DLL,因此您可能会遇到问题。
将 32 位应用程序与 64 位操作系统相结合有什么优点/缺点?
并非如此,当然它们不能使用超过 4GB 的 RAM,并且运行速度可能比在相同硬件上的 32 位操作系统上运行得慢一些。
【讨论】:
使用 x64 等架构的现代处理器可以执行 32 位和 64 位应用程序。
32 位操作系统只能分配 4GB 内存 (2^32 = 4294967296),而 64 位操作系统可以分配更多 (2^64 = 18446744073709551616)。
最好在 64 位操作系统上安装 64 位应用程序,因为如果您的内存超过 4GB,它们将能够使用您计算机的所有内存。
【讨论】:
64 位版本的 Windows 附带一个 Windows on Windows 64 (WOW64) 子系统,允许它运行 32 位应用程序。整个过程实际上非常复杂,您可以在以下位置阅读:
How Windows 7 / Vista 64 Support 32 Bit Applications
如果您有 64 位操作系统并且应用程序供应商提供 64 位版本,请安装它。如果没有,安装 32 位版本不会有什么坏处。
能够在同一台机器上组合 32 位和 64 位应用程序具有明显的优势,因为并非所有供应商都提供其应用程序的 64 位版本。一个允许您同时运行这两者的操作系统将使您能够访问消费者可用的更广泛的软件集。
【讨论】:
并非每个程序都提供 64 位版本。
是的,您通常应该尽可能使用 64 位应用程序。
结合 32 位和 64 位应用程序很痛苦,而且绝不是一个好主意。它通常只在必要时完成(回到我的第一点)。
【讨论】: