Hello, Guest the thread was viewed3.8k times and contains 94 replies

last post from Claus at the

Wie kann man eine Diskette "defragmentieren"?

  • Das ist über 50 Beiträge her, und immer noch wirfst Du "Disk defragmentieren" und "Directory schrumpfen" in den gleichen Topf.

    Ich weiß nicht. Ich bin ja kein Experte. Aber ich würde das schon als "Defragmentieren" bezeichnen, wenn man versucht, die Daten und das Inhaltsverzeichnis auf einem Datenträger lückenlos zu re-organisieren. Und nach meinem Verständnis ist der beste und einfachste Weg, um genau dieses Ziel zu erreichen, der, indem man die Diskette mit einem Filecopy-Programm auf eine leere, frisch-formatierte Diskette kopiert. Hab' ich übrigens gestern Abend bei meinen Workdisks gemacht.


    Wenn hier im Thread noch ein besserer Weg aufgezeigt wurde, dann habe ich das mal wieder nicht mitgekriegt. Wie immer. Tschuldigung. :nixwiss:

    ...oder geht es Dir nur darum, oobdoos Beitragsrekord zu brechen?

    Lol. Nein, zuerst versuche ich deinen Post-Count zu brechen. Aber da bin ich noch weit entfernt von. :D

    Aber mal im Ernst: Mich interessiert der Post-Count nicht. Von mir aus kann der bei mir auch gerne auf 0 zurückgesetzt- oder gar nicht angezeigt werden.

  • Aber ich würde das schon als "Defragmentieren" bezeichnen, wenn man versucht, die Daten und das Inhaltsverzeichnis auf einem Datenträger lückenlos zu re-organisieren.

    Hab ich in dem Zusammenhang noch nie gehört. Und wenn schon, dann wäre das bestenfalls ein "Directory defragmentieren" aber bestimmt kein "Diskette defragmentieren".

  • Und wenn schon, dann wäre das bestenfalls ein "Directory defragmentieren" aber bestimmt kein "Diskette defragmentieren".

    Wenn man die Diskette mit einem Filecopy-Programm kopiert, dann werden sowohl die Daten als auch das Inhaltsverzeichnis lückenlos auf der Zieldiskette erzeugt.

    Das ist genau das, was ich wollte. Die Frage, die ich mir gestellt habe, ist, ob es noch einen einfacheren Weg gibt. Bei dem man die Diskette nicht kopieren muss.

    Hätte ja sein können, dass es ein Diskkommando dafür gibt, das ich nicht kenne.

  • Ja, einen "freien Slot" im Directory auf Track 18 sollte man nicht als Fragmentierung bezeichnen. Das Directory wäre fragmentiert, wenn die Dateinamen zerhackt durcheinandergewürflet wären. :)

    "Directory(einträge) (neu)sortieren" wäre die passende Beschreibung und dafür gibt es seit dem letzten Jahrhundert die entsprechenden Tools.

    Wenn eine Datei in kleinen Häppchen verstreut auf der Disk abgelegt ist, dann liegt eine Fragmentierung vor und das behebt man durch einfaches Umkopieren auf eine andere Diskette. Sowas direkt auf derselben Disk zu veranstalten, wie es bei Festplatten passiert, macht keinen Sinn.

  • Ja, einen "freien Slot" im Directory auf Track 18 sollte man nicht als Fragmentierung bezeichnen.

    Wieso nicht? Freie, unbenutzte Stellen innerhalb eines Datenblocks (hier:das Directory) bezeichnet man als Fragmente, also kann man hier durchaus von Fragmentierung sprechen, wenn freie Stellen erzeugt werden.

    In der Informationstechnik wird mit Fragmentierung die Zerstückelung eines Speicherraums bezeichnet.

    ...

    Liegen die verwendeten Bereiche nicht kontinuierlich hintereinander, sondern existieren dazwischen noch Stücke freien Speichers (Fragmente), spricht man von Fragmentierung oder von fragmentiertem Speicher.


    Ach so: Wenn schon Haare gespalten werden, sollte man einen Friseur zu Rate ziehen! :D

  • Wieso nicht? Freie, unbenutzte Stellen innerhalb eines Datenblocks (hier:das Directory) bezeichnet man als Fragmente, also kann man hier durchaus von Fragmentierung sprechen, wenn freie Stellen erzeugt werden.

    Dann sind die 35 Tracks einer Diskette by default ferment fragmentiert, weil vor Track 18 und nach Track 18 freie Tracks bestehen. :emojiSmiley-28::emojiSmiley-12:

    Die Fragmentierung freier Blöcke oder die Fragmentierung belegter Blöcke? BAM! :D ... woran man so seine Überlegungen verschwendet. ;)


    Gibt es denn tatsächlich kein einfaches Programm, das die Directoryeinträge selbstständig so verschiebt, dass entstandene Lücken im Directory geschlossen werden, während die Reihenfolge ansonsten beibehalten wird?

    Das kam mir auch heut morgen in den Sinn. Ein simples Directory-Autosort wäre nett, letztendlich muss man aber nur mit einem der bestehenden Directory Tools einmal das Directory neu speichern, dann ist die Lücke weg. Ein paar Tasten muss man allerdings für diesen Vorgang drücken. Full-Auto wäre interessant, allerdings nur mit vorheriger Anzeige und Bestätigung des Ergebnisses. Kann man sich basteln.

  • Gibt es denn tatsächlich kein einfaches Programm, das die Directoryeinträge selbstständig so verschiebt, dass entstandene Lücken im Directory geschlossen werden, während die Reihenfolge ansonsten beibehalten wird?

    Ja, das ist in der Tat die Frage, die mich schon die ganze Zeit beschäftigt. Und deren Beantwortung ich nicht zu finden weiß.

  • Löschen ist ein relatives no-go auf Commodore Laufwerken, weil die immer gleich so grantig werden. Von daher gibts die Leute, die ihr Verzeichnis komplett designen wollen und dafür etwas Zeit aufwenden (dafür gibts genug Tools, einige davon hier gelistet), die Leute, die per Filecopy auf ne andere Floppy rüberkopieren, wenns wieder schön werden soll, und die Leute, die froh sind, dass die Daten überhaupt auf der Floppy gespeichert bleiben und sich über die Reihenfolge im Directory keine Gedanken machen.


    Es ist nicht sonderlich schwer, ein solches Tool zu bauen, aber anscheinend hat tatsächlich noch niemand den Bedarf gesehen.

  • Gibt es denn tatsächlich kein einfaches Programm, das die Directoryeinträge selbstständig so verschiebt, dass entstandene Lücken im Directory geschlossen werden, während die Reihenfolge ansonsten beibehalten wird?

    Probier doch den Disc Wizard aus. Meiner Meinung nach tut er das. Ich habe ein Programm von der Disk gelöscht und mit dem Disc Wizard das Verzeichnis neu geschrieben. Lücke weg.

  • Gibt es denn tatsächlich kein einfaches Programm, das die Directoryeinträge selbstständig so verschiebt, dass entstandene Lücken im Directory geschlossen werden, während die Reihenfolge ansonsten beibehalten wird?

    Ja, das ist in der Tat die Frage, die mich schon die ganze Zeit beschäftigt. Und deren Beantwortung ich nicht zu finden weiß.

    Ich hab ein altes Directory Sort, das ist in BASIC geschrieben mit Assembler Teil, übersichtlich und einfach zu bedienen. War damals bei mir das erste Tool dafür, wir haben es geliebt.

    Da könnte man sich relativ einfach weitere Funktionen hinzufügen - nur ob man das wirklich muss... :)

  • Im DirMaster gibt‘s unter „More“ den Menüpunkt „Compact“. Der tut genau das, was Omega vorschwebt: verwaiste Einträge im Directory entfernen und die anderen nach vorne rutschen lassen. Am Ende sind alle Lücken (Fragmente) weg.


    Arndt

  • Im DirMaster gibt‘s unter „More“ den Menüpunkt „Compact“. Der tut genau das, was Omega vorschwebt: verwaiste Einträge im Directory entfernen und die anderen nach vorne rutschen lassen. Am Ende sind alle Lücken (Fragmente) weg.

    Wozu ein einfaches Tool verwenden, wenn man doch alle Files einer Disk kopieren kann? ;)



    Dann sind die 35 Tracks einer Diskette by default ferment fragmentiert, weil vor Track 18 und nach Track 18 freie Tracks bestehen. :emojiSmiley-28::emojiSmiley-12:

    Nicht nur das, CBM-DOS (und andere ebenfalls) verwenden per Default einen Interleave, weil's sinnvoll ist auf dieser Hardware. "Defragmentieren" wäre kontraproduktiv.

  • Dann sind die 35 Tracks einer Diskette by default ferment fragmentiert, weil vor Track 18 und nach Track 18 freie Tracks bestehen. :emojiSmiley-28::emojiSmiley-12:

    Nicht nur das, CBM-DOS (und andere ebenfalls) verwenden per Default einen Interleave, weil's sinnvoll ist auf dieser Hardware. "Defragmentieren" wäre kontraproduktiv.

    Da ist kein Widerspruch. Die zu entfernenden Fragmente wären Teile anderer Dateien innerhalb des Spurbereichs einer Datei, wobei man nicht vollständig vom Programm gefüllte Anfangs- und Endspuren nicht betrachtet.


    Ob mit oder ohne Interleave (der sich auf die Block-Anordnung innerhalb einer Spur bezieht), eine Datei ist unfragmentiert, wenn sie in einem geschlossenen Spurbereich mit auf- oder absteigenden Spuren liegt (Ausnahme Directory-Spur).


    Nach einer Defragmentierung hätte man also genau das Ergebnis von Filecopy aller Dateien auf eine leere Disk, da alle Dateien aus genau einem Fragment bestehen.

  • Gibt es denn tatsächlich kein einfaches Programm, das die Directoryeinträge selbstständig so verschiebt, dass entstandene Lücken im Directory geschlossen werden, während die Reihenfolge ansonsten beibehalten wird?

    https://csdb.dk/release/?id=226525


    Mit dem "New Directory" sollte es so funktionieren wie es gewünscht ist.

  • Gibt es denn tatsächlich kein einfaches Programm, das die Directoryeinträge selbstständig so verschiebt, dass entstandene Lücken im Directory geschlossen werden, während die Reihenfolge ansonsten beibehalten wird?

    https://csdb.dk/release/?id=226525


    Mit dem "New Directory" sollte es so funktionieren wie es gewünscht ist.

    Danke! Das ist noch nicht ganz das Passende. Das Programm sortiert entweder die Dateinamen alphabetisch oder lässt mich nach Wahl verschieben.


    Was gesucht ist: Ein Programm, das die Reihenfolge der Dateinamen so beibehält, wie sie im aktuellen Directory stehen (das muss ja nicht zwingend alphabetisch sortiert sein). Es sollen nur intern die Lücken in der Directory durch "Hochschieben" geschlossen werden, dass eine neue Datei automatisch wieder als Letztes im Directory eingetragen wird.

  • https://csdb.dk/release/?id=226525


    Mit dem "New Directory" sollte es so funktionieren wie es gewünscht ist.

    Nicht ganz, weil man da öfter die Tasten drücken muss, um die Einträge von links nach rechts zu holen.

    Eine alphabetische Sortierung bringt ja die vorhandene Reihenfolge durcheinander.

    Einfach nur das Directory einlesen und unverändert schreiben entfernt die Lücken - und das geht mit diesem Tool nicht mit einem Klick.