对于 32 位 Windows,boot.ini 中的“/3Gb”开关是否有任何缺点?

Bog*_*_Ch 8 windows performance memory 32-bit

Microsoft 建议在 Boot.ini 中使用 /3Gb 开关,以便为在 32 位系统上运行的进程获得更多内存。

目前我需要大量内存用于devenv进程(Visual Studio 2008),因为我有一个复杂的解决方案,其中包含大量项目和表单,并在设计时消耗大量资源。

我想问一下,如果有人知道,使用/3Gb 开关的负面影响是什么,有没有不建议使用它的情况。

Eva*_*son 11

在台式机上,可能没有问题。内核分页池在 W2K3 / WXP 机器上较小,带有 /3GB 开关集。对于台式机来说,这可能不是问题,因为您不应该接近耗尽内核分页池。在服务器上,耗尽内核分页池会给您带来问题,而且您更有可能耗尽它。

这里有一些关于与 /3GB 开关相关的内核内存注意事项的很好的细节。如果您真的想要,您可以启动 NT 内核调试器并在更改前后使用此文档中的信息来配置您的系统:http : //blogs.technet.com/markrussinovich/archive/2009/03/26 /3211216.aspx

  • 我总是想知道,当我得到反对票时,*为什么*我得到反对票。我不相信这篇帖子中的任何内容实际上是不正确的,但如果是这样,我想知道这样我就可以删除帖子或更正它。我很好奇downvoters有什么问题......(当然,我意识到他们永远不会回来回应这个评论......哦,好吧......) (3认同)

crb*_*crb 5

您的内核可用的内存将减少 - 开关将内核模式地址空间/用户模式地址空间拆分(以前为 2GB 到 2GB)调整为 1GB 到 3GB。在继续之前,请阅读Raymond Chen在 /3GB 上的帖子和后续内容。


Jac*_*ing 5

在进行任何更改之前,您应该首先检查要运行的进程是否与 LARGEADDRESSAWARE 标志相关联。使用该标志,进程使用内存的方式不会发生变化。

您可以为此使用 SDK 工具:

dumpbin /headers exeName

吐出的标题应包括:

应用程序可以处理大(> 2GB)地址

我对 devenv.exe 进行了检查,在 VS2008 中它确实包含了该标志。