![从 32 位到 64 位是否会消耗更多内存?](https://linux22.com/image/570848/%E4%BB%8E%2032%20%E4%BD%8D%E5%88%B0%2064%20%E4%BD%8D%E6%98%AF%E5%90%A6%E4%BC%9A%E6%B6%88%E8%80%97%E6%9B%B4%E5%A4%9A%E5%86%85%E5%AD%98%EF%BC%9F.png)
从 32 位服务器迁移到 64 位服务器时,由于数据空间的增加,应用程序是否会在 64 位机器上占用更多内存?
答案1
不是,而是因为指针大小增加了(每个指针也从 32 位移动到 64 位)。
数据空间必须使用才能被消耗,重新编译应用程序不会奇迹般地让它使用更多内存。有些应用程序确实会这样做(缓存),但这是由于它们的逻辑。
答案2
不会 - 应用程序将使用相同的内存,但是您可能会发现,如果正在使用的应用程序针对 64 位进行了优化,那么它实际上可能会使用更少的内存。
答案3
答案是肯定的,应用程序将在 64 位操作系统上使用更多内存,但这并不是因为数据空间,而是由于其他原因。
- 内存指针现在占用 8 个字节,而不是 4 个
- 通常,应用程序会加载 32 位二进制文件以及 64 位本机二进制文件
请注意,我们谈论的不是大量的开销,而是 100MB 的范围,但在虚拟桌面环境中考虑这一点很重要,尤其是当您认为将部署数百台虚拟机时