我怎样才能强制 Windows 使用我的全部 16GB RAM?
我运行的是 Windows 7 64 位,有 16GB 的 RAM,并且页面文件已禁用。我想当我的内存不足时,我的程序就会崩溃,否则使用页面文件,计算机...将...只是...继续...*喝一杯,看电影*...越来越慢,因为如果我需要更多的内存,我会购买更多 RAM而不是浪费钱买一台全新的电脑。
但是由于某种原因,程序在 9.5GB 的 RAM 使用量下崩溃。即使我低于这个数字,一切都非常灵敏,而且无论它使用了多少 RAM,我对软件的稳定性非常满意。问题是我应该能够使用所有 16GB 的 RAM,但我收到内存不足的警告。现在我非常清楚,即使禁用了 Superfetch,Windows 也绝对会浪费 RAM,而且我时不时地清空修改过的页面列表、待机和优先级 0内存地图。但是,即使考虑到 RAM 使用量和 RAMMap 的使用量,我仍然应该有另外 6.5GB 的可用 RAM。WTH?
有可能是 RAM 出了问题,并且其中一部分已被隔离而无法使用吗?我想如果某个 DIMM 坏了,系统根本无法开机自检 (启动)。我寒冷的再买 16GB 的 RAM,但这是一个百分比错误吗?如果我有 32GB,我只能使用 24GB?我还没有找到其他任何东西,但如果我确实独立找到了一个可行的答案,我会自己在这里发布。
答案1
Windows 7(很可能还有其他版本的 Windows)都有不是正确报告正在使用的 RAM 数量。
在任务管理器中,默认内存列是“内存(私有工作集)”,但这很容易让人误解。我安装了 MariaDB(MySQL 的替代品),程序会在内存占用非常低的情况下崩溃。已报告RAM 使用情况。
经过一番了解后,我发现衡量的正确方法实际的Windows 7 中的 RAM 使用情况是查看犯罪. 在进程选项卡中单击看法菜单,选择列...然后勾选选项提交大小. 使用 MariaDB很多大于私有内存。在底部的性能选项卡中是系统信息,最后一项是提交 (GB)但是它只会向下舍入到最接近的千兆字节(在具有 16GB RAM 的系统上)。
不幸的是,我已经过了更换现有 RAM(4x4GB DDR3)的阶段,所以我的下一个系统将至少有 32GB(2x16GB)。
微软确实喜欢在 RAM 中保留大量不相关的文件很长一段时间,但是如果你想强制系统清除 RAM 中的无用文件,我发现可以使用内存地图。RAMMap 有一个空的菜单顶部并清除内存中的垃圾通常需要大约半分钟的时间,然后我才能关闭程序。当我需要关闭多线程 Firefox 52 ESR 并决定加载游戏时,我会这样做。
一般来说,首先大多数软件至少都比较臃肿。微软本身占用过多的内存。其次,Windows保持不应该在 RAM 中运行的东西。第三,不知道纯可选程序正在运行的用户应该学会区分应该运行和不应该运行的东西。最后,在操作系统更好地管理 RAM 使用之前,要么拥有足够的 RAM 并禁用页面文件,要么在打开另一个程序之前关闭一个占用大量 RAM 的程序,这总是比操作系统加载并保存在 RAM 中的多余内容而浪费硬盘(SSD 或机械)的性能更高。你知道的越多,你能做的就越多。