Warum verwendet chkdsk 90% meines Arbeitsspeichers?

24

Als ich meinen neuen Computer baute, gab ich meinen Eltern, die dringend ein Upgrade benötigten, meinen alten, nachdem ich natürlich alles gesäubert hatte und nur das Betriebssystem und ein paar Programme übriggelassen hatte. Es hat eine Weile gut funktioniert, bevor Windows nicht mehr geladen werden konnte (es blieb einfach hängen). Nachdem ich dieses Verhalten untersucht und nachgefragt hatte, entschied ich, dass es sich möglicherweise um eine fehlerhafte Festplatte handelt. Ich zog sie heraus und steckte sie in meinen eigenen Computer, um chkdsk darauf auszuführen Da mein Computer mit RAID eingerichtet ist und die Windows-Installation keine RAID-Treiber hatte, habe ich nur meine eigene Windows 7-Installation gebootet und chkdsk darauf ausgeführt.

Ich habe das letzten Freitagabend gemacht und es ist seitdem gelaufen (das macht es ungefähr 6 Tage so weit). Ich bin nicht überrascht, da es langsam sein kann, es ist eine 1-TB-Festplatte und eine "grüne" Western Digital-Festplatte, so dass es wahrscheinlich sowieso mit einer langsameren Drehzahl läuft. Ich sehe, dass es Fortschritte macht, also weiß ich, dass es nicht feststeckt und die Festplattenanzeige auf meinem Computer ständig leuchtet, was ich für nichts anderes verwendet habe, als Dateien über das Netzwerk und das Light Web auszutauschen Surfen, während dies ausgeführt wurde.

Mein Computer verfügt über 16 GB RAM und es wird Windows 7 Pro x64 ausgeführt. Warum macht chkdsk 90% davon aus? Es hält dieses Niveau konstant und bewegt sich seit Tagen zwischen 90% und 91%, da es ständig Speicher freigibt und füllt. Die CPU-Auslastung ist sehr gering (was ich erwarte, da dies eine sehr E / A-schwere Operation ist).

Es sieht nicht so aus, als ob etwas Schlimmes vor sich geht, aber ich bin neugierig. Warum nimmt chkdsk so viel Speicher in Anspruch? Zumindest bin ich froh, dass es dies auf intelligente Weise zu tun scheint, da es ein hohes Niveau beibehält, ohne die Hauptfestplatte durch Paging zu beschädigen.

Weiß jemand? Ist das normal?

Ben Richards
quelle

Antworten:

19

Wenn es mehrere Tage gelaufen ist, gehe ich davon aus, dass Sie chkdskmit der /rFlagge gelaufen sind .

Unter Windows 7 ist es normal, so viel RAM zu verwenden. Quelle

Das Dateisystemteam begann sofort, das Problem zu untersuchen. [...] [F] Aus ihrer Sicht war die Speichernutzung beabsichtigt und es handelte sich um eine spezielle Windows 7-Änderung für dieses Szenario (das Flag / r greift nach einer exklusiven Sperre und repariert eine Festplatte, sodass wir davon ausgehen, dass Sie dies wirklich möchten die Festplatte muss repariert werden, bevor Sie mehr Dinge auf dem Computer tun [...]).

afrazier
quelle
Ich benutze die GUI, habe aber das Kontrollkästchen aktiviert, um nach fehlerhaften Sektoren zu suchen und diese zu reparieren. Danke für den Link!
Ben Richards
Es ist nicht nur Windows 7; Auch Windows 2008 R2 gerät in diesen unvorstellbaren Zustand. Ich bringe eine einzelne Festplatte zum Überprüfen herunter, und chkdsk musste unbedingt 20 GB RAM für diese einzelne Festplatte verbrauchen und den Rest des Servers verlangsamen. Das ist kein Fehler, 20 GB Speicher.
Icelava
@icelava: Angesichts der Tatsache, dass 2008 R2 eine Fortsetzung der Windows 7-Codebasis ist, ist dies nicht überraschend. Dies betrifft wahrscheinlich auch alle neueren Betriebssysteme.
afrazier
Ich habe meine externe 2-TB-NTFS-Festplatte ohne die Option / r (oder eine andere Option) überprüft und trotzdem fast den gesamten Arbeitsspeicher belegt (ich habe 5 GB). Windows 7 64bit.
David Balažic
Interessant. Ich habe es gerade mit einer 1,5-TB-Festplatte verglichen und es wurde nicht einmal 1 GB auf einem 8-GB-System erreicht. Ich würde erwarten, dass eine Nur-Lese-Prüfung nur so viel RAM verwendet, wie erforderlich.
afrazier
8

Ich verwende CHKDSK /rderzeit ein 1 TB SATA 3 GB-Laufwerk von Seagate. Unter Windows 7 x 64 Ultimate verbraucht CHKDSK 31 GB meines 32 GB-Arbeitsspeichers. Wenn Sie jedoch ein anderes Programm wie After Effects laden, gibt CHKDSK RAM frei, damit das Programm ordnungsgemäß ausgeführt werden kann.

Richard
quelle
5

Wenn Sie mehr als 4 GB RAM haben, können Sie die Verwendung von chkdsk RAM auf 4 GB beschränken, indem Sie die 32-Bit-Version von chkdsk verwenden. Es befindet sich in C: \ Windows \ SysWow64 \ chkdsk.exe

Dies kann von Vorteil sein, da andere bereits geladene Programme nicht auf die Festplatte ausgelagert werden und der Festplatten-Cache nicht geleert wird. Wenn Sie chkdsk also parallel mit anderen Programmen ausführen, wird die Leistung der anderen Programme nicht beeinträchtigt, es sei denn, sie verwenden dieselbe Festplatte.

informatorius
quelle
Toller Tipp! Mein Entwicklungscomputer hat aus einem bestimmten Grund 48 GB und ich bemerkte einen starken Leistungsabfall bei neuen Prozessen (und als Entwickler werden neue Prozesse sehr, sehr oft gestartet). Dies ist darauf zurückzuführen, dass sie chkdskim Hintergrund ausgeführt werden und fast die gesamte Leistung verbrauchen. Das hat den Tag gerettet;)
Abel
3

Wie bereits veröffentlicht, ist dies beabsichtigt in Windows 7. Das "Design" ist ab Windows 8 behoben und jetzt verwendet chkdsk weniger RAM. Wenn Sie möchten, dass Win7 den gesamten Arbeitsspeicher nutzt, um die Leistung zu verbessern, führen Sie chkdskden Parameter aus /perf.

/ perf Nur NTFS: (Muss mit "/ scan" verwendet werden.) Verwendet mehr Systemressourcen, um einen Scan so schnell wie möglich durchzuführen. Dies kann sich negativ auf die Leistung anderer auf dem System ausgeführter Aufgaben auswirken.

magicandre1981
quelle
2

Dies scheint beabsichtigt zu sein. Nicht genutzter RAM ist eine verschwendete Ressource. Es gibt keinen Grund, die RAM-Nutzung zu minimieren und den Arbeitsspeicher in der "Reserve" zu belassen, wenn er bei Bedarf fast sofort neu eingerichtet werden kann. Windows 8 verwendet RAM für alles, anstatt es im Leerlauf laufen zu lassen. Möglicherweise hat diese Philosophie bereits in Windows 7 mit CHKDSK begonnen. Ich weiß nicht, welchen Nutzen CHKDSK aus der hohen RAM-Nutzung zieht, aber ich bin bereit zu glauben, dass es einen Nutzen gibt. Ich habe vor langer Zeit gelernt, dass es keinen guten Grund gibt, nur weil ich es nicht verstehe. Solange der Speicherbedarf anderer Programme sinkt, ist dies kein Problem.

Nathan Brazil
quelle
2
Unbenutzter Ram wird nur verschwendet, bis er von einem anderen Programm verwendet wird, das ihn benötigt. Wenn Sie den gesamten Arbeitsspeicher verbrauchen und dann ein anderes Programm starten möchten, haben Sie die Ladezeit nur um Größenordnungen verlängert, da Sie zuerst all das im RAM enthaltene Material auf die Festplatte spülen müssen, was schmerzhaft langsam ist. Niemand hätte dieses Problem bemerkt, wenn dies kein Problem verursacht hätte. Es ist eine gute Idee, immer RAM in Reserve zu haben, um neue Prozesse zu starten. Ich würde gerne wissen, wer die geniale Idee hat, den gesamten Arbeitsspeicher zu verbrauchen.
Horta
2
Einige Programme, wie z. B. VMware, lehnen es ab, VMs zu starten, wenn nicht genügend RAM verfügbar ist (es wird nicht versucht, RAM zu verbrauchen, es wird einfach aufgegeben, ohne es zu versuchen, was bedeutet, dass chkdsk nicht einmal die Möglichkeit hat, etwas freizugeben). Das Töten von chkdsk hat potenziell schädliche Auswirkungen. Sie haben also die Wahl: 1) Warten Sie unzumutbare Zeit, oder 2) Sie riskieren den Verlust von Daten auf dem zu überprüfenden Laufwerk. Ja Microsoft.
aggregate1166877
0

Es ist ein Fehler. Ich habe diesen Absturz meiner Maschine durch die Verwendung von zu viel Speicher, und das ist mit 8 GB RAM und einer 4 GB Swap-Datei. Es gibt keine Möglichkeit, die passieren sollte. Sie können es "von Grund auf" nennen, aber das ist bedeutungslos. Es ist eindeutig ein Fehler. Es gibt keine einzige gültige Basis für ein chkdsk-Programm, um so viele Daten im RAM zu speichern.

Metamorphose
quelle
2
Das Q & A-Format der Site behält sich Antworten auf Fragen vor. Dieser Beitrag ist eigentlich eher ein Kommentar als eine Antwort. Sie können jederzeit Ihre eigenen Beiträge kommentieren. Wenn Sie über eine ausreichende Reputation verfügen, können Sie jeden Beitrag kommentieren . Nicht beantwortete Fragen ziehen tendenziell Abwertungen nach sich und können gelöscht werden.
Fixer1234
Meiner Meinung nach ist es eine Antwort auf die Frage, die das Poster gestellt hat, und daher eine Lösung, kein Kommentar.
Metamorphose