Ich frage mich schon seit einiger Zeit wie ein solchen Programm überhaupt funktioniert.
Das Fragmentiert bedeutet, dass zusammenhängende Dateiteile über "große" Entfernungen verteilt sind ist mir klar.
Aber woher weiß das Programm, welche Dateiteile denn zusammengehören? Würde es durchgehend überwachen, welche Fragmente, bei welcher Anwendung, zu welcher Zeit und mit welchen anderen Fragmenten zugegriffen wird, würde das ja einen unglaublich großen Performanceeinbruch und zig Gigabyte an Speicherplatz verbrauchen.
2010-05-31T04:37:51Z
@Mann vom Mond Das Inhaltsverzeichnis? Von diesem Begriff hab ich im Zusammenhang mit Festplatten noch nichts gehört. Ist damit die Ordnerstruktur gemeint, wie sie vom Windows Explorer verwendet wird?
Das würde dann ja aber bedeutet, das ein Defragmentierungsprogramm nur die Teile nah beieinander hinsortiert, die im Explorer auch im Selben Ordner sind.
Das würde dann aber nicht wesentlich helfen, da ja viele Datein (Registery, Datein bei "Eigene Datei", die Ausführbaren Dateien aus dem Programmodner, etc.) ja häufig weit auseinander liegen.
2010-05-31T04:41:32Z
@Knut G Ja, genau wie schon geschrieben ist mir das klar. Deine Antwort hat leider überhaupt nichts mit meiner Frage zu tun gehabt. ;)
Web-Man2010-05-31T04:55:26Z
Beste Antwort
"@Mann vom Mond Das Inhaltsverzeichnis? Von diesem Begriff hab ich im Zusammenhang mit Festplatten noch nichts gehört.":
► Ich melde mich auch mal zu Wort. Hier einige Informationen zum Inhaltsverzeichnis der Festplatte, was es wirklich gibt...
► Zu jeder Datei legt Windows einen Pfad an, der vom jeweiligen Laufwerk über Ordner und Unter-Ordner bis zu jeder Datei führt. Der Pfad entspricht also der Adresse, unter der ein Programm eine Datei findet. Soll ein Programm eine bestimmte Datei öffnen, dann schickt es eine Anfrage an Windows, die das Betriebs-System an das Datei-System (bei modernen Windows-Versionen immer NTFS) weiterleitet. Anhand des Pfades findet das Datei-System die Speicher-Adresse der Datei auf der Festplatte und übermittelt die Datei an Windows.
► Damit das Datei-System die Pfad-Angaben von Windows den entsprechenden Dateien zuordnen kann, legt es ein Inhaltsverzeichnis an. Es verküpft die verschiedenen Speicher-Adressen einer Datei auf der Festplatte mit den entsprechenden Pfaden. Bei NTFS (New Technology File System) trägt dieses Inhaltsverzeichnis den Namen MFT (Master File Table).
Wenn eine Datei gespeichert wird, macht Windows das willkürlich.
Im Inhaltsverzeichnis wird mitgeteilt wo der Erste Teil der Datei gespeichert wird.
Passt dieser nicht in den zur Verfügung stehenden Festplattenplatz, wird am Ende dieses Dateiteiles ein Eintrag erzeugt der mitteilt, hier Ende des Ersten Teiles, nächstes Dateiteil liegt woanders.
Am Beginn des nächsten Dateiteiles ist dann ein Eintrag zu finden der sagt; hier bin ich. Der Zweite Teil der Datei.
Und so weiter und so weiter mit allen Dateiteilen.
Am Ende der Datei wird dann noch mitgeteilt, dass hier die Datei zu Ende ist und das Programm nicht weiter suchen muß.
Zusätzlich wird auch noch das Datum und wie oft auf die Datei zugegriffen wurde mitgespeichert.
Ein Defragmentierprogramm liest diese Daten aus, sucht sich die einzelnen Dateiteile zusammen, speichert das Ganze auf der Festplatte in einem freien Bereich zwischen, räumt eine Stelle die groß genug ist auf der Festplatte frei und speichert dann die Datei in einem Stück neu auf der Platte.
Ein gutes Programm achtet dabei auch noch darauf, daß oft benutzte Dateien in einem Bereich gespeichert werden, auf die schnell zugegriffen wird.
Das macht ein Defragmentierprogramm mit allen Dateien auf der Festplatte.
Deshalb sollte auf der Platte immer noch einiges an freiem Platz vorhanden sein, da sonst das ganze hin und hergeschiebe der Daten sehr lange dauert.
Das ist jetzt nur ein grober Ausriss. Ich denke aber um zu Verstehen wie so ein Programm prinzipiell arbeitet sollte es reichen.
Beim Schließen eines Programms legt der Computer die vielen einzelnen Dateien willkürlich auf freie Speicherplätze ab. Beim nächsten Mal muß er sie also etwas länger suchen, um das Programm wieder zu öffnen. Wenn er das eine Zeit lang mit vielen Programmen gemacht hat, ist so ein Durcheinander auf der Festplatte, daß er immer länger braucht. Beim Defragmentieren werden also zusammengehörende Dateien wieder zu einem Paket zusammengepackt, er findet sie wieder schneller. Ansonsten wird nichts verändert.
Im Inhaltsverzeichnis der Festplatten steht wo sich die einzelnen Teile einer Datei befinden, die Festplatte muss ja zu jeder Zeit wissen wo sie die einzelnen Teile zum Lesen finden kann. Diese Information können die Defragmentierungsprogramme auswerten.
@ Web Man du benutzt den Begiff "Inhaltsverzeichniss" im letzten Teil deiner Antwort obwohl du am Anfang sagst das du im Zusammenhang mit Festpaltten davon noch nichts gehört hast.
Inhaltsverzeichniss hätte ich genauer erklären sollen und darauf hinweisen sollen, dass das Dateisystem jedes Datenträgers ein solches anlegt. Siehe auch hier: http://de.wikipedia.org/wiki/Dateisystem