[quote=master,03.11.2005, 11:18]
Am Ende werden die Dateien jedoch ca. 5-10 MB (minimale Grösse) und nicht ganze 100MB sein.. denkst du 5-10 MB reichen auch?
[/quote]
Wie schon gesagt: Ich habe keine Ahnung, wie NTFS intern arbeitet. Noch viel weniger Ahnung, als ich von ext3 oder reiserfs habe, die ich wenigstens benutze. ;)
Wenn NTFS z.B. nur ein Journaling der Metadaten macht, dann hast du ueberhaupt kein Problem mit den Datei
inhalten, da diese dann "sofort" geschrieben werden (unberuecksichtigt der Pufferung durch den Festplattencache, heutzutage ca. 2-8 MB).
Quoteviel grösser will ich sie nicht machen, wegen performance.. höchstens 20MB.
Nebenfrage: Inwiefern bedeuten groessere Dateien schlechtere Performance?
QuoteWenn ich die Datei z.b. Mit O_TRUNC auf 0 Bytes setzt ohne Sie zu löschen.
Bleibt sie dann erhalten? oder löscht das system trotzdem?
"Loeschen" einer Datei heisst grundsaetzlich, dass der von der Datei benutzte Plattenplatz als leer markiert wird. Mehr nicht. Und natuerlich kann es Dateien mit einer Laenge 0 geben. Fuer diese muss dann gar kein Plattenplatz reserviert werden, ausser natuerlich den Platz fuer den Verzeichniseintrag.
QuoteZudem angenommen ich schreibe in meine Datei
folgende daten pro print:
"000101010111101"
Werden alle Daten einer Datei als zusammengehörende Einheit aneinander gespeichert? oder Zerstückelt das FS die daten
z. B. in:
00010101 -> kommt auf adresse 1
0111101 -> kommt auf adresse 100 (statt 2)
Bei allen heute gebraeuchlichen Dateisysteme ist es moeglich, dass eine Datei auf der Platte "zerstueckelt" wird (Stichwort: Fragmentierung). Es waere einfach viel zu ineffizient, Plattenplatz zu verschwenden, weil dort eine Datei nicht mehr "komplett" hinpasst, oder permanent die Dateien auf der Platte umzusortieren, um freie Bereiche zu schaffen.
Diese "zerstueckelten" Dateien muessen im Zugriff noch nicht mal so viel weniger effizient sein als linear angelegte Dateien: reiserfs z.B. legt die Clusterinformationen einer Datei in einem Baum ab und ist damit in vielen Faellen schneller als Dateisysteme, die mit linearen Listen arbeiten, aber diese bei grossen Dateien immer wieder verlaengern muessen. Auch kann reiserfs einen einzelnen Cluster fuer
mehrere Dateien nutzen, wenn diese kleiner als die Clustergroesse sind. Das vermindert bei vielen kleinen Dateien den sonst auftretenden "Verschnitt" auf dem Dateisystem enorm. Aber das ist hier nun wirklich off-topic. ;)