Tuesday, April 10, 2012

Chkdsk on Windows 7 is one memory-leaking Sonofabit, Uses 30 GB of RAM

My desktop PC has 32 GB of RAM. It's ridiculous in that way, by almost any standard. I assumed that when I hit full usage of memory it would be because my entire virtual network of random servers, etc. would be running at once.

I was wrong. All it took was running Chkdsk.exe on an external HDD.

See below for yourself:


In case you can't see it clearly, that's Chkdsk.exe taking up 30,060,916 KB of RAM. Otherwise known as 30.06 GB of RAM.

Apparently this has been a known issue for a long time. If I find a resolution, I'll post one here in problem/solution format. If you have any tips, drop a line in the comments!

Update: Apparently the OS shipped with this bug and there's no attempt to correct it as it's a very low-level architecture issue. I'll check Windows 8 in a VM and see if it runs into the same problem.

2 comments:

  1. If you're referring to performing a thorough CHKDSK of a drive, which appears to be the case from the scenarios presented in the links you referenced, the extensive RAM usage is not a bug, but is by design. Not that I agree it, but you can find the developer's reasoning for this at http://blogs.msdn.com/b/e7/archive/2009/08/10/what-we-do-with-a-bug-report.aspx

    ReplyDelete
  2. Since the link I provided is a pretty hefty wall of text, their opinion can be found in the fourth paragraph and I've included it below:

    "from their perspective the memory usage was by design and was a specific Windows 7 change for this scenario (the /r flag grabs an exclusive lock and repairs a disk and so our assumption is you’d really like the disk to be fixed before you do more stuff on the machine, an assumption validated by several subsequent third party blog posts on this topic)."

    ReplyDelete

Keep it classy, folks.