2012-06-06 2 views
7

Beim Lesen über das Unix-FFS habe ich gelesen, dass 10% des Speicherplatzes reserviert sind, damit sichergestellt werden kann, dass sich die Datenblöcke der Dateien in derselben Zylindergruppe befinden. Trifft dies bei Dateisystemen wie ext2/ext3 zu, ist Speicherplatz reserviert, so dass die Datenblöcke der Dateien alle in derselben Blockgruppe sein können? Sind es auch 10%? oder variiert es? Gilt das auch für Journaling-Dateisysteme? Vielen Dank.Wie viel reservieren moderne Dateisysteme für jede Blockgruppe?

Antwort

1

vor allem ich denke, dass ext-Dateisysteme die gleiche Vorstellung von einer Zylindergruppe implementieren, sie nennen es einfach Blockgruppe. um herauszufinden, können Sie fdisk die Partition, um Ihre tatsächliche Blockanzahl und Blöcke/Gruppennummer zu finden. Dann die number of block groups = block count/(block/group). Sie werden genau wie FFS cgs verwendet (um Zugriffszeiten zu beschleunigen). Nun Journaling IMO hat nichts mit dieser Operation zu tun, außer dass es tatsächlich verschwendet etwas mehr Speicherplatz auf Ihrer Festplatte :). Soweit ich weiß, benötigen Soft-Updates, die BSD-Lösung für das Problem, das ein Journal in typischen ext-Dateisystemen lösen würde, keinen zusätzlichen Platz, sind aber enorm komplex zu implementieren und fügen neue Funktionen hinzu (wie Größenanpassung). interessant zu lesen:

ext3 overhead disclosed part 1

Prost!

0

Meine Daten für frische ext2 Bilder sind:

Size Block size Bl/Gr Total bytes Free bytes  Ratio 
1MB 1024  8192  1048576   1009664  0.03710  
10MB 1024  8192  10485760  10054656  0.04111    
100MB 1024  8192  104857600  99942400  0.04688 
512M 4096  32768  536870912  528019456  0.01649 
1G  4096  32768 1073741824  1055543296  0.01695 
10G 4096  32768 10737418240  10545336320  0.01789 

Also, es ist ziemlich vorhersehbar, dass die Raumeffizienz eines Ext2-Dateisystem auf Blockgröße aufgrund Layout in der obigen Antwort beschrieben abhängt: Dateisystem ist ein Satz von Blockgruppen, für jede Gruppe wird ihre Größe als Anzahl der Blöcke bestimmt, die durch eine 1-Block-Bitmap beschrieben werden können => für einen 4096-Byte-Block gibt es 8 * 4096 Blöcke.

Fazit: für ext2/ext3 Familie von Dateisystemen durchschnittlichen Ausfall Verbrauch von Speicherplatz auf Blockgröße abhängig: ~ 1,6-1,8% für 4096-Byte-Blöcke, ~ 4% für 1024 diejenigen