Was Siracusa hier seltsamerweise nicht erwähnt:When searching for unused nodes in a b-tree file, Apple's HFS+ implementation processes the data16 bits at a time. Why? Presumably because Motorola's 68000 processor natively supports 16-bit operations. Modern Mac CPUs have registers that are up to 256 bits wide.
Das ist schon richtig, aber deshalb ein komplett neues FS einzuführen gleicht dem berühmten Ölscheich, der seinen Mercedes mit vollem Aschenbecher einfach wegschmeisst. Für solche Lappalien verbreitert man ganz einfach die entsprechenden Datenfelder, fügt bei der Gelegenheit noch ein paar weitere nützliche hinzu und nennt das ganze simpel eine neue Revision.The time resolution for HFS+ file dates is only one second. ... Modern file systems have up to nanosecond precision on their file dates.
Aber hallo, das ging ja voll nach hinten los. Dass diese Parallelisierung letztenendes immer nur eine PSEUDOparallelisierung ist, die mit zusätzlichen Taktzyklen erkauft werden muss und unterm Strich nur einen verlustbringenden Kompromiss darstellt, das sagt er nicht? Dem Gespann aus IO-Treiber und Dateisystem einen ganz eigenen Core exklusiv zu reservieren und diesen gleich direkt aufs Speichergerät auszulagern scheint wohl keine Option für übermorgen mehr zu sein? Wozu hier bitte heute noch ein ZFS auf OS-Ebene einführen, das dadurch schon in etwa 5-10 Jahren *komplett* obsolet werden und als ganzes "wegfallen" wird? Zu viel Langeweile?File system metadata structures in HFS+ have global locks. Only one process can update the file system at a time. This is an embarrassment in an age of preemptive multitasking and 16-core CPUs. Modern file systems like ZFS allow multiple simultaneous updates, even to files that are in the same directory.
Jaaaa, das ist schon richtig. Aber wer bitteschön braucht das noch, wo man vergleichbares schon sowohl eine Abstraktionsschicht höher (HDIX) als auch in einer zusätzlich darunter geschobenen Ebene (CoreStorage) zur Verfügung hat?HFS+ lacks sparse file support, which allows space to be allocated only as needed in large files.
Hier scheinen wir etwas zu wenig Schlaf gehabt zu haben?B-trees or no b-trees, over half a million files in a single directory makes me nervous.
Das ist falsch! 16Bit Operationen auf den alten Datenstrukturen mit neuen CPUs sind nun einmal deutlich langsamer, weil moderne CPUs nur schnell lesen und schreiben können, wenn das Aligment zur Wortgröße der CPU paßt. D.h. nimmt man neuen Programmcode der 16Bit Werte schreibt, knallt der Compiler massenweise Paddingbytes dazwischen, um schnelle Speicherzugriffe erreichen zu können. Die gibt es aber bei den alten Datenstrukturen aus 68k Zeiten ja nicht, denn damals hat man extra nur 16bit verwendet, weil man diese effizient und speichersparend schreiben und lesen konnte. Speicher war damals sehr teuer, sonst hätte man damals gleich 32Bit nutzen können.Würde man einen 68k mit den gleichen Taktraten und mit den gleichen Schnittstellen betreiben können wie heutige CPUs, dann wären seine 16-bittigen Operationen bei solchen Algorithmen kein Stück langsamer oder ineffizienter als solche in grösseren Zahlenräumen.
Nein, das ist nicht der Fall! Lies Dir bitte mal wirklich die Informationen zu modernen Filesystemen durch. Es ist ja nicht so, daß es nicht viele Informationen im Netz gäbe. HFS+ ist alter Schrott und ganz und gar nicht mehr zeitgemäß. Die Aufgaben des OS auf einen Core zu pinnen ist auch nicht sonderlich intelligent, da FS wie ZFS auf NUMA und auch ccNUMA Systemen laufen, und auch die IO-Karten auf verschiedene NUMA-Knoten verteilt sein können. Daher ist es sinnvoll, die Aufgaben für echt paralleles Schreiben/Lesen auch auf verschiedene NUMA-Knoten zu verteilen.Aber hallo, das ging ja voll nach hinten los. Dass diese Parallelisierung letztenendes immer nur eine PSEUDOparallelisierung ist,
Auf die Lesegeschwindigkeit hat die Breite keinen Einfluss, und beim durchsuchen des Baums muss genau überhaupt nichts dorthin geschrieben werden.16Bit Operationen auf den alten Datenstrukturen mit neuen CPUs sind nun einmal deutlich langsamer, weil moderne CPUs nur schnell lesen und schreiben können, wenn das Aligment zur Wortgröße der CPU paßt.
Na sieh mal an, du fährst deine HD also über mehrere Interfaces gleichzeitig an?Nein, das ist nicht der Fall!
ZFS ganz genauso, das ist an die Bedingungen einer SSD exakt genauso schlecht angepasst.HFS+ ist alter Schrott und ganz und gar nicht mehr zeitgemäß.
Interessant. Was genau hättest du denn dann als Alternative zu SCSI oder (E)IDE seinerzeit eingeführt?Die Aufgaben des OS auf einen Core zu pinnen ist auch nicht sonderlich intelligent
Um dann letztlich auf dem Speichergerät trotzdem wieder konzentriert zu werden. Was für ein hilfloser Hirnfick.Daher ist es sinnvoll, die Aufgaben für echt paralleles Schreiben/Lesen auch auf verschiedene NUMA-Knoten zu verteilen.
Naja tatsächlich wird das ja jetzt mit den PCIe SSDs Steckkarten im Serverbereich versucht.Na sieh mal an, du fährst deine HD also über mehrere Interfaces gleichzeitig an?
Und das hat auch schon einen Namen. Verblüffenderweise ist das "gar kein" Filesystem mehr.direkt an den Speicher&Adress Bussen hängen - da ist ein neues Filesystem angesagt
Niemand hindert dich, das gleiche auch mit x-beliebigen anderen Dateisystemen zu tun.Bei manchen Anwendungen werden sogar mittels eines Tools zusätzliche Checksummen generiert um die Integrität der abgesicherten Dateien ja sicher zu stellen
Diese Profis benötigen diese Prüfsummen auch auf entfernten Systemen und in ganz anderen speziellen Situationen. Beispielsweise für ein blitzschnelles Aufspüren von Dateiduplikaten auch in monströsen Datenbergen von hunderten oder tausenden TB. Die internen Datenstrukturen von ZFS sind da exakt genauso nutzlos. Hat schon seinen Grund, dass zB Google sein ganz eigenes spezialisiertes Filing-System entwickelt hat (GFS). Ganz andere Aufgabenstellungen erfordern eben auch ganz andere Lösungen.Diese Profis verlassen sich nicht auf die Zuverlässigkeit von Checksummen welche vom Festplatten Controller (unterhalb des Filesystems) erstellt werden.
Wir verwenden essentielle Cookies, damit diese Website funktioniert, und optionale Cookies, um den Komfort bei der Nutzung zu verbessern.
Für die Ihnen angezeigten Verarbeitungszwecke können Cookies, Geräte-Kennungen oder andere Informationen auf Ihrem Gerät gespeichert oder abgerufen werden.
Anzeigen und Inhalte können basierend auf einem Profil personalisiert werden. Es können mehr Daten hinzugefügt werden, um Anzeigen und Inhalte besser zu personalisieren. Die Performance von Anzeigen und Inhalten kann gemessen werden. Erkenntnisse über Zielgruppen, die die Anzeigen und Inhalte betrachtet haben, können abgeleitet werden. Daten können verwendet werden, um Benutzerfreundlichkeit, Systeme und Software aufzubauen oder zu verbessern.
Durch das Klicken des Buttons "Zustimmen" willigen Sie gem. Art. 49 Abs. 1 DSGVO ein, dass auch Anbieter in den USA Ihre Daten verarbeiten. In diesem Fall ist es möglich, dass die übermittelten Daten durch lokale Behörden verarbeitet werden.