• IT-Karriere:
  • Services:

Linux-Dateisysteme: Nova soll Zugriffe auf NVDIMMs optimieren

Die künftigen persistenten NVDIMM-Speichermodule wie 3D-XPoint werden durch herkömmliche Dateisysteme ausgebremst. Nova für Linux will hingegen Zugriffe auf den neuen Speicher optimieren.

Artikel veröffentlicht am ,
Das Linux-Dateisystem Nova soll Zugriffe auf NVDIMMs beschleunigen.
Das Linux-Dateisystem Nova soll Zugriffe auf NVDIMMs beschleunigen. (Bild: Intel)

Linux bekommt ein neues Dateisystem namens Nova. Das Besondere daran: Nova ist speziell auf die bald erhältlichen, persistenten NVDIMM-Speichermodule wie 3D-XPoint oder ReRAM zugeschnitten. Das Dateisystem wurde an der University of California entwickelt, der Code ist jetzt in einer ersten Version eingereicht worden. Anders als herkömmliche Dateisysteme wie Ext4 oder XFS verzichtet Nova auf Zugriffe über die Block-Schnittstelle des Kernels und arbeitet direkt im Adressraum des Kernels wie auch der Arbeitsspeicher. Dadurch soll Nova die NVDIMM-Speichermodule effizienter nutzen können.

Stellenmarkt
  1. Weiss Mobiltechnik GmbH, Rohrdorf
  2. DRÄXLMAIER Group, Vilsbiburg bei Landshut

Dabei verzichtet Nova aber nicht auf die Datenstrukturen klassischer Dateisysteme. Es gibt nach wie vor einen Superblock und Inodes, die in herkömmlichen Dateisystemen die Datenstruktur ausmachen. Allerdings nutzt Nova beispielsweise Inodes auf andere Weise: Sie zeigen lediglich auf den Anfang und das Ende einer Datenstruktur und halten Änderungen an dieser fest - etwa veränderte Inhalte, Rechte oder Links. Wird eine Datei verändert, nutzt Nova das Prozedere Copy-On-Write, das zunächst die alte Datenstruktur nicht verändert. Stattdessen alloziert Nova einen neuen Speicherbereich und kopiert die ursprüngliche Datenstruktur dorthin. Anschließend werden die Änderungen in dem Inode festgehalten und der Zeiger auf das Ende der neuen Datenstruktur ergänzt. Der Speicherplatz der ursprünglichen Datenstruktur wird dann wieder freigegeben.

Verteilte Verwaltung

Der freie Speicherplatz wird in Form mehrerer Rot-Schwarz-Bäume ebenso wie die Inode-Listen direkt im Arbeitsspeicher gehalten und verteilt über die einzelnen CPUs eines Prozessors verwaltet, statt wie bisher zentral von Datenträgern über den Block-Layer ausgelesen zu werden. Zudem nutzt Nova den schnelleren Arbeitsspeicher, um dort eine kompakte Beschreibung einer Datei abzulegen, auf die zugegriffen wird.

Nova nutzt zwar vorhandene Techniken des Linux-Kernels, setzt diese in ungewohnter Kombination aber so ein, dass sie optimierte Zugriffe auf NVDIMMs ermöglichen, die künftig neben flüchtigem DRAM-Speicher direkt am Speicherbus der CPUs hängen werden. Die Entwickler des Dateisystems haben ihren experimentellen Code inzwischen eingereicht und nach Kritik der Kernel-Hacker bereits angepasst. So wurde etwa die Unterstützung der DAX-Schnittstelle (Direct Access) des Kernels implementiert, die dazu führt, dass Anwendungen Daten vom nicht flüchtigen Speicher direkt in den Adressraum des Kernels abbilden können, um später ohne Umwege über den Kernel darauf zuzugreifen.

Zudem haben die Nova-Entwickler zahlreiche Funktionen nachgereicht, die für eine verbesserte Datenintegrität sorgen sollen. Außerdem stören sich die Kernel-Entwickler noch daran, dass Schreibrechte auf im Adressraum abgebildete Daten erst durch Aufhebung des Schreibschutzes der CPU gewährt werden. Bislang funktioniert Nova auch nur auf x86-Systemen.

Die Nova-Entwickler haben eine Beschreibung des neuen Dateisystems und seiner Vorzüge veröffentlicht und in einem weiteren Dokument ihre Ansätze zum Schutz der Datenintegrität genauer beschrieben. Der eingereichte Code für den Linux-Kernel enthält weitere Details zu Nova.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Anzeige
Top-Angebote
  1. 111€ + Versand
  2. 111€
  3. (zu jedem Artikel aus der Aktion gibt es einen weiteren geschenkt)
  4. (aktuell u. a. Death Stranding PS4 für 39,99€ und PS4-Controller verschiedene Farben für 42...

Neuro-Chef 15. Aug 2017

Und ich dachte die Azure Cloud läuft so gut, dass das Kühlwasser für Goldfische auch ohne...


Folgen Sie uns
       


Microsoft Surface Pro X - Hands on

Schon beim ersten Ausprobieren wird klar: Das Surface Pro X ist ein sehr gutes Beispiel für ARM-Geräte mit Windows 10. Viele Funktionen wirken durchdacht - die Preisvorstellung gehört nicht dazu.

Microsoft Surface Pro X - Hands on Video aufrufen
Macbook Pro 16 Zoll im Test: Ein Schritt zurück sind zwei Schritte nach vorn
Macbook Pro 16 Zoll im Test
Ein Schritt zurück sind zwei Schritte nach vorn

Keine Butterfly-Tastatur mehr, eine physische Escape-Taste, dünnere Displayränder: Es scheint, als habe Apple beim Macbook Pro 16 doch auf das Feedback der Nutzer gehört und ist einen Schritt zurückgegangen. Golem.de hat sich angeschaut, ob sich die Änderungen auch lohnen.
Ein Test von Oliver Nickel

  1. Audioprobleme Knackgeräusche beim neuen Macbook Pro 16 Zoll
  2. iFixit Kleber und Nieten im neuen Macbook Pro 16 Zoll
  3. Macbook Pro Apple gibt fehlerhafte Butterfly-Tastatur auf

Radeon RX 5500 (4GB) im Test: AMDs beste 200-Euro-Karte seit Jahren
Radeon RX 5500 (4GB) im Test
AMDs beste 200-Euro-Karte seit Jahren

Mit der Radeon RX 5500 hat AMD endlich wieder eine sparsame und moderne Mittelklasse-Grafikkarte im Angebot. Verglichen mit Nvidias Geforce GTX 1650 Super reicht es zum Patt - aber nicht in allen Bereichen.
Ein Test von Marc Sauter

  1. Workstation-Grafikkarte AMDs Radeon Pro W5700 hat USB-C-Anschluss
  2. Navi-Grafikeinheit Apple bekommt Vollausbau und AMD bringt RX 5300M
  3. Navi-14-Grafikkarte AMD stellt Radeon RX 5500 vor

Mikrocontroller: Sensordaten mit Micro Python und ESP8266 auslesen
Mikrocontroller
Sensordaten mit Micro Python und ESP8266 auslesen

Python gilt als relativ einfach und ist die Sprache der Wahl in der Data Science und beim maschinellen Lernen. Aber die Sprache kann auch anders. Mithilfe von Micro Python können zum Beispiel Sensordaten ausgelesen werden. Ein kleines Elektronikprojekt ganz ohne Löten.
Eine Anleitung von Dirk Koller

  1. Programmiersprache Python verkürzt Release-Zyklus auf ein Jahr
  2. Programmiersprache Anfang 2020 ist endgültig Schluss für Python 2

    •  /