Ich verwende eine Ramdisk, um ein Git-Repository mit vielen (> 60 KB) kleinen (~ 200 Byte) Dateien zu beschleunigen.
Gibt es eine Möglichkeit, eine Ramdisk mit einer kleineren Blockgröße zu erstellen?
Zusammenfassung: Ich glaube nicht, dass dies möglich ist, zumindest nicht für Volumes, die als HFS+ formatiert sind.
Mein derzeitiges Verständnis ist, dass HFS+ seine Dateisystemblockgröße (getrennt von der Blockgröße des physischen Geräts) gemäß einer festen Standardzuweisungsblockgröße auswählt , die nicht manuell außer Kraft gesetzt werden kann.
Diskussionen in anderen Foren von 2002 bis 2011 ( unter anderem CompGroups , MacRumors ) schlagen vor , newfs_hfs(8) zu verwenden , das eine -b <blocksize>
Option hat, um die Blockgröße beim Erstellen eines neuen Dateisystems manuell festzulegen.
Ich habe versucht, newfs_hfs
verschiedene Arten von Partitionen zu verwenden, sowohl auf .dmg-Diskimages als auch auf physischen SATA-Festplatten (über die SATA<->USB-Schnittstelle) und mit verschiedenen Dateisystemen (HFS+, FAT16, FAT32). Als ich mit verschiedenen -b-Größen newfs_hfs
lief (512, 1024, 2048, 4096, 8192,) tatsächlich hat es Erfolg beim Erstellen der Dateisysteme mit den angegebenen Blockgrößen gemeldet. Ich konnte diese Volumes normal mounten und lesen/schreiben.
Aber wenn ich die Testvolumes mit diskutil info <diskname>
(wo <diskname>
ist disk1, disk4 oder was auch immer Ihre Festplatte ist) untersuche, sehe ich immer:
Total Size: 104.9 MB (104857600 Bytes) (exactly 204800 512-Byte-Blocks)
Volume Free Space: 102.4 MB (102385664 Bytes) (exactly 199972 512-Byte-Blocks)
Device Block Size: 512 Bytes
Beachten Sie, dass das Ende der newfs_hfs(8)
Manpage diesen Leckerbissen enthält:
HISTORY
The newfs_hfs command appeared in Mac OS X Server 1.0 . As of Mac OS X
10.6, this utility no longer generates HFS standard file systems.
Es scheint, dass OS X 10.8 (und wahrscheinlich 10.7 und vielleicht frühere Versionen) alle zu erstellenden Blockgrößen newfs_hfs
zugunsten von Standardgrößen außer Kraft setzen, die von einer höheren Autorität auferlegt werden. (??)
Ein Artikel, auf den ich gestoßen bin, schlug vor, das Software-RAID-Dienstprogramm von OS X zu verwenden, um einen RAID-Spiegel zu erstellen. Mit Software-RAID kann man eine RAID- Stripe- Größe angeben , aber da dies im Allgemeinen darauf ausgerichtet ist, den Durchsatz für große Dateien und nicht für kleine Dateien zu verbessern, beträgt die minimale RAID-Stripe-Größe meiner Meinung nach 4 KB – für Ihre Zwecke nicht nützlich.
mmmmmm
dh82
hdiutil attach -nomount ram://1165430
mmmmmm
dh82
dh82