如何处理Windows操作系统申请不到系统内存的问题
问题
Windows操作系统还有可用的物理内存,系统进程却申请不到内存?
回答
根据Windows内存管理机制,计算机有两种类型的内存即随机存取内存(RAM,即物理内存)和虚拟内存。所有程序都使用RAM,但是当没有足够RAM用于正尝试运行的程序时,Windows会临时将通常存储在RAM中的信息移动到硬盘上称为分页文件(即虚拟内存)的文件中。使用虚拟内存,可以为程序释放足够的RAM以便程序正确运行。
操作系统可分配的内存以“虚拟内存: 可用”为准,通过Systeminfo命令可查看“虚拟内存: 可用”的值。
比如在命令行窗口执行Systeminfo命令,显示如下:
物理内存总量: 8,184 MB 可用的物理内存: 2,223 MB 虚拟内存: 最大值: 18,413 MB 虚拟内存: 可用: 125 MB 虚拟内存: 使用中: 18,288 MB
即使“可用的物理内存”的值很大(2,223 MB),如果“虚拟内存: 可用”不足(125 MB),系统进程也申请不到内存。
“虚拟内存: 最大值” = “物理内存总量” + “分页文件大小”。
针对这种场景,可通过增加系统的物理内存或增加分页文件大小来增大系统可申请的内存空间(请参见Windows操作系统的帮助)。