gpt4 book ai didi

windows - 32 位应用程序在 64 位 Windows 中的行为(内存)

转载 作者:可可西里 更新时间:2023-11-01 10:27:58 27 4
gpt4 key购买 nike

我正在 .NET 中开发 32 位应用程序,由于各种原因无法编译为 64 位应用程序。

我需要同时运行其中的许多,它们会占用大量内存。我想加载一个带有大量内存的 Windows 7 机器,因此我想使用 64 位版本的 Windows 7,这样我们就可以在这些机器上放置数 GB 的 RAM。

我的问题是:我的应用程序的每个实例使用的最大内存约为 500mb。在 Windows 7 64 位中,这些 32 位应用程序将使用 Windows 中的 WOW64 仿真层运行(我假设)。当我开始同时运行越来越多的这些实例时,它们是否会全部卡在内存的底部 2gb 中运行,或者 Windows 是否会使用 64 位 Windows 中可能的所有更高地址范围的内存为它们分配内存?在这种情况下,32 位软件的可寻址内存限制只是每个实例的限制,还是所有实例都将限制在内存的底部 2gb?

最佳答案

您将内存(物理地址空间)与虚拟地址空间混淆了。 32位系统可以放4GB以上的内存;您不需要移动到 64 位来获得物理地址空间。每个进程都有自己的虚拟地址空间,所以每个进程都会有自己的 2GB 用户模式地址空间来使用。 (如果/3GB 则为 3GB,如果使用/LARGEADDRESSAWARE 在 WOW64 上运行则为 4GB。)

关于windows - 32 位应用程序在 64 位 Windows 中的行为(内存),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8672622/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com