Hallo,
ich schreib erst mal ein bisschen BlaBla:
als Silvester Aufgabe hab ich mir gesetzt, eine Art Defragmentierung zu schreiben. Nun ist es schon Silvestermittag, es verbleiben noch weniger 12 Stunden, und 12 Stunden hab ich dafür als (untere?) Schranke einkalkuliert.
Ich hätte auch schon eine Idee, aber bei der Umsetzung sehr schwierig.
Und jetzt kein BlaBla mehr:
Ich kann (in Java) freien Speicherplatz allozieren/reservieren, Files „umschreiben“, aber z. B. nicht nicht alle Attribute kopieren.
Java scheint in dem Fall für die low level disc accesses usw. auch nicht das richtig Werkzeug zu sein. Ich hab natürlich gegoogelt, aber Microsoft stellt sich das ungefähr so vor: https://msdn.microsoft.com/en-us/library/windows/desktop/aa363911(v=vs.85).aspx#defragmenting_a_file .
Kann ich irgendwie, über JNI, diese FSCTL_GET_VOLUME_BITMAP usw. inkludieren?
Das Problem ist, dass ich die Files lesen, löschen, schreiben kann, aber dann alle Attribute anders sind. Die File Eigenschaften müssen ja 1:1 bleiben.
Weiterhin wollte ich schon vermeiden, mich so weit mit dem NTFS auseinanderzusetzen - oder gar händisch dort etwas zu machen.
Könnt ihr ein paar Tipps geben, welche Sprache, welche Bibs usw. usf.?