TU BRAUNSCHWEIG
| Carl-Friedrich-Gauß-Fakultät | Informatik
Informatikzentrum

Intelligente Zeiger für persistenten Speicher

BetreuerArthur Martens
ProfessorProf. Dr. Rüdiger Kapitza
Projektdnvmemory
IBR GruppeDS (Prof. Kapitza)
ArtBachelorarbeit
Statusoffen

Motivation

Als persistenter Speicher (engl. persistent memory) versteht man neue Formen des Hauptspeichers mit der Eigenschaft Daten auch ohne konstante Stromzufuhr dauerhaft speichern zu können. Speziell für diese Form des Hauptspeichers wurde am IBR DeNoVo-Malloc entwickelt. Der Hauptaspekt von DeNoVo-Malloc ist den Zugriff und die Speicherung von Daten im Persistenten Speicher so zuverlässig wie möglich zu gestalten.

Problemstellung

Die häufigste Quellen für Fehler im Umgang mit persistenten Daten ist dabei der Benutzer bzw. der Entwickler selbst. So können z.b. durch unaufmerksamkeit bei der Programmierung persistente Daten an flüchtige Zeiger gebunden werden. Bei einem Absturz oder Neustart des Programms würde das zu einem Persistenten Speicherleck führen. Ebenfalls Leicht zu übersehen sind Persistente Zeiger die auf Flüchtige Daten zeigen. Nach einem Neustart würden diese Zeiger auf nicht mehr existierende Daten Zeigen und Programmfehler verursachen.

Aufgabenstellung

In dieser Arbeit sollen speziell für Persisistenten Speicher konzipierte Intelligente-Zeigern (engl. Smart-Pointer) implementiert werden. Mit Hilfe dieser Zeiger soll verhindert werden, dass nach einem neustart des Programms unsichere Datenvererweise existieren oder persistente Speicherlecks entstehen. Weiterhin kann mit diesen Zeigern über eine referenzzählung ein rudimentäres Speichermanagement implementiert werden - ähnlich zu shared_ptr oder unique_ptr die in c++11 weit verbreitet sind.


aktualisiert am 11.06.2018, 16:06 von Arthur Martens
printemailtop