为什么 chkdsk 占用了我 90% 的 RAM?

为什么 chkdsk 占用了我 90% 的 RAM?

当我组装新电脑时,我将旧电脑交给了父母,他们急需升级电脑,当然,我清理了电脑中的所有东西,只留下操作系统和一些程序。电脑运行了一段时间,但 Windows 加载失败(卡住了)。在调查了这种现象并四处询问后,我认为可能是硬盘出现故障,因此我将其拔出并插入自己的电脑,在其上运行 chkdsk(我最初这样做是为了尝试启动到硬盘,但由于我的电脑设置了 RAID,而 Windows 安装没有 RAID 驱动程序,因此我启动了自己的 Windows 7 安装并在其上运行 chkdsk)。

我上周五晚上做了这个,从那时起它就一直在运行(到目前为止大约 6 天)。我并不感到惊讶,因为它可能很慢,它是一块 1 TB 硬盘,而且是 Western Digital 的“绿色”硬盘,所以它很可能以较慢的转速运行。我确实看到它正在进展,所以我知道它没有卡住,而且我的电脑上的硬盘灯一直亮着,在运行这个时,我除了通过网络共享文件和轻度网页浏览外,没有用它做任何其他事情。

我的电脑有 16 GB 的 RAM,运行的是 Windows 7 Pro x64。为什么 chkdsk 占用了其中的 90%?它一直保持在这个水平,并且已经持续了好几天,在 90% 到 91% 之间,因为它不断释放和填充内存。CPU 使用率非常低(这是我所期望的,因为这是一个非常 I/O 密集的操作)。

看起来似乎没有什么不好的事情发生,但我很好奇。为什么 chkdsk 占用了这么多内存?至少我很高兴它似乎在智能地做这件事,因为它保持了较高的水平,而没有开始通过分页来破坏主硬盘。

有人知道吗?这是正常的吗?

答案1

如果它已经运行了好几天,我假设你是chkdsk带着/r旗帜运行的。

在 Windows 7 中,使用那么多 RAM 是正常的。 来源

文件系统团队立即开始调查该问题。[...]从他们的角度来看,内存使用是设计使然,是针对这种情况的 Windows 7 特定更改(/r 标志获取独占锁并修复磁盘,因此我们假设您确实希望在对机器进行更多操作之前修复磁盘[...])。

答案2

CHKDSK /r目前正在使用 Seagate 1TB SATA 3GB 硬盘运行 Windows 7 x64 Ultimate,CHKDSK 占用了我 32GB RAM 中的 31GB。但是,如果您加载其他程序(例如 After Effects),CHKDSK 会释放 RAM,让程序运行良好。

答案3

如果您的 RAM 超过 4 GB,则可以使用 chkdsk 32 位版本将 chkdsk RAM 使用量限制为 4 GB。它位于 C:\Windows\SysWow64\chkdsk.exe

这可能是一个优点,因为其他已加载的程序不会被交换到磁盘,磁盘缓存也不会被清空。因此,与其他程序并行运行 chkdsk 不会损害其他程序的性能,除非它们使用相同的磁盘。

答案4

这似乎是设计使然。未使用的 RAM 是一种浪费的资源。没有任何理由尽量减少 RAM 使用并将 RAM 保持在“备用”状态,因为它几乎可以根据需要立即重新利用。Windows 8 将使用 RAM 进行任何事物而不是让它闲置。也许这种理念始于 Windows 7 并涉及 CHKDSK。我不知道 CHKDSK 从高 RAM 使用中获得什么好处,但我愿意相信有好处。我很久以前就知道,仅仅因为我不理解,并不意味着没有好的理由。只要它的内存使用量随着其他程序需要内存而减少,这不是问题。

相关内容