Wie funktioniert die Defragmentierung von Programmen?


13

a) Welchen Algorithmus würde ein typisches Defragmentierungsprogramm verwenden, um die Fragmentierung zu beseitigen?

b) In Defraggler habe ich eine schnelle Defragmentierungsoption und eine Defragmentierungsoption. Angenommen, eine Defragmentierung würde zu einer normalen Defragmentierung führen. Was würde eine schnelle Defragmentierung bewirken?

Antworten:


13

Ich befasse mich nicht mit Defragmentierung, möchte jedoch einige Informationen zu Ihrer Frage mitteilen. Im ersten Teil Ihrer Frage erwähnt MSDN in ihrem Blog die Defragmentierungsalgorithmen:

In Windows XP wird jede Datei, die in mehrere Teile aufgeteilt ist, als fragmentiert betrachtet. Nicht so in Windows Vista, wenn die Fragmente groß genug sind - der Defragmentierungsalgorithmus wurde geändert (von Windows XP), um Teile einer Datei zu ignorieren, die größer als 64 MB sind. Infolgedessen werden beim Defragmentieren in XP und beim Defragmentieren in Vista unterschiedliche Fragmentierungsgrade auf einem Volume gemeldet. Also, welches ist richtig? Bevor die Frage beantwortet werden kann, müssen wir verstehen, warum die Defragmentierung in Vista geändert wurde. In Vista haben wir die Auswirkungen der Defragmentierung analysiert und festgestellt, dass die wichtigsten Leistungsverbesserungen durch Defragmentierung erzielt werden, wenn Dateien zu ausreichend großen Blöcken zusammengefasst werden, sodass die Auswirkungen der Latenz bei der Suche nach Datenträgern im Verhältnis zur Latenz beim sequenziellen Lesen nicht signifikant sind die Datei.Es gibt einen Punkt, nach dem das Kombinieren fragmentierter Dateien keinen erkennbaren Vorteil hat .

Sie können den gesamten Artikel hier lesen: Engineering Windows 7 - Defragmentation.

Für den zweiten Teil Ihrer Frage hat Piriform Docs eine Antwort:

Defraggler verfügt über zwei verschiedene Defragmentierungsmodi: Normales Defragmentieren und Schnelles Defragmentieren. Schnelle Defragmentierung ist schneller, aber die Ergebnisse sind nicht so optimal wie bei einer normalen Defragmentierung.

Schnelle Defragmentierung funktioniert schneller, indem Dateien mit bestimmten Eigenschaften übersprungen werden. Diese werden auf der Registerkarte Schnelle Defragmentierung im Dialogfeld Optionen angegeben.

Die Standardregel für die schnelle Defragmentierung besteht darin, Dateien mit Fragmenten zu überspringen, die größer als 50 MB sind.

Für ein besseres Verständnis der Defragmentierung hat Wikipedia eine gute Seite .


+1 Dies bezieht sich auf fast alles, was wir über Defrag sagen können!
r0ca

2

Eine wichtige Anmerkung: Microsoft bietet eine API, mit der Programme Dateien sicher defragmentieren können. (Siehe Dateien auf MSDN defragmentieren.) Jeder Defragmentierer sollte diese APIs verwenden, und die meisten tun dies auch.

All die "Magie" der Defragmentierung hängt davon ab, wie die Dateien angeordnet werden, und genau das verwenden die verschiedenen Programme, um sich voneinander zu unterscheiden. Wenn Sie sich wirklich schlau fühlen, können Sie mit MyDefrag Ihr eigenes Layout-Skript schreiben.


0

Es gibt absolut keine 1 Antwort. Es gibt keinen "typischen" Algorithmus. Weil jede Defragmentierungs-App ihre eigenen Algorithmen verwendet. Sicher, es könnte einen "Trend" bei einigen der bekannteren Algorithmen geben, aber im Allgemeinen gibt es keinen typischen oder universellen.

Nehmen Sie MyDefrag , eine erstaunliche App übrigens, Sie können in gewissem Umfang Ihre eigenen Defragmentierungsalgorithmen schreiben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.