我全新安装了 Windows 7,正常启动时 RAM 会达到 2.5GB。我查看了任务管理器,发现至少少了 1.5GB,资源监视器也是如此。没有任何迹象表明哪些程序占用了这些 RAM。有人能告诉我如何找出哪些程序占用了我的内存吗?我相信这是一种病毒,但没有一款免费防病毒程序能找到它。
我添加了下面的图片。如果这是 Windows 7 的正常使用情况(如某些答案所暗示的那样),那么我完全不明白这一点。
PS
我的 Windows 8 安装运行内存低于 2.5GB,实际上是 1. 左右,直到最近我从另一台电脑传输了一些文件,而这台电脑也存在与我现在相同的问题。我删除了 Windows 8 并安装了 Windows 7,因为我无论如何都会这样做,但现在 Windows 7 的内存使用率也很高。
答案1
如果你希望操作系统不使用你的内存,那就把它从机器里拿出来放在桌子上。但只要内存还在机器里,使用它就是自由的。如果你在想“我想要空闲的内存现在以便我能使用它之后“,你太傻了。你现在可以使用它了和稍后再使用。不使用 RAM 的缺点。完全没有。
现代操作系统只有在别无选择的情况下才会释放 RAM。这是因为只有两种情况会发生。如果 RAM 很快就会被使用,那么它们就必须再次使用 RAM,浪费它们释放 RAM 的努力——将 RAM 直接从一种用途转移到另一种用途更容易。如果 RAM 不会很快被使用,那么释放它的努力又会白费。释放 RAM 是操作系统别无选择时才会使用的最后手段,因为它增加了操作系统使用 RAM 必须经过的额外步骤。
仅在极少数情况下需要 RAM,并且操作系统无法将 RAM 从一种用途转换为另一种用途(例如,在中断上下文中)时才需要空闲 RAM。为此目的只需要非常少量的 RAM,在现代计算机上通常为 64MB 左右。任何超过此数量的空闲 RAM 都是浪费。
考虑一下如果某个程序运行后停止。该程序在 RAM 中。操作系统可以释放 RAM,也可以将程序保留在 RAM 中。如果程序很快再次运行,将其保留在 RAM 中是一个巨大的优势——避免了磁盘 I/O。如果 RAM 不需要用于其他目的,则将程序保留在 RAM 中没有任何成本。因此,操作系统会将程序保留在 RAM 中,直到需要该 RAM 用于其他目的。在不需要可用 RAM 时释放 RAM 是一个纯粹的失败提议。
答案2
答案3
你可能观察到的是Windows 7 的磁盘缓存功能,它们实际上优化了 RAM 的使用,即使看起来好像发生了相反的情况。
Linux 内核也有这种功能。
答案4
这与 Linux 常见的担忧“Linux 占用了我的 RAM”非常相似。我大量使用 Windows 7 计算机,当我有 6GB 的物理 RAM 时,它会占用大约 5GB 的内存。当我升级到 8GB 时,它会占用 6-7GB 的内存。但我对计算机的操作没有任何改变。
它使用 RAM 来缓存文件,以便以后可以更快地访问。与 Linux 非常相似。它完全免费,当您的应用程序需要分配更多 RAM 时,Windows 7 将发布。