Dateisysteme für nicht-flüchtige Speicher auf drahtlosen Sensorknoten

Status: abgeschlossen
Betreuer: Torsten Teubler
Student: Jan Pinkowski

Themengebiet

Dateisysteme ermöglichen Programmen und somit dem Benutzer eine Abstrahierung von spezifischen Zugriffsmethoden auf persistente Datenträger wie z.B. Festplatten. Auf PC Systemen sind sie schon lange etabliert, auf Mikrocontrollern –die EEPROMs oder Flash Speicher als persistente Datenträger benutzen– sind diese keineswegs selbstverständlich. Es gibt bereits Ansätze für Dateisysteme auf Mikrokontrollern, die sich aber mehr auf das auf dem Chip integrierte EEPROM beziehen. Interessant wäre hier zu untersuchen, ob man das Konzept auch auf verschiedene Speicher wie EEPROM oder Flash übertragen kann, die über verschiedene Bussysteme wie I²C oder SPI angebunden sind. Darauf aufbauen ist eine Art Swapping denkbar, mit der ein Mikrocontroller größere Datenblöcke aus dem Arbeitsspeicher auslagern könnte, wenn diese für absehbare Zeit nicht genutzt werden. Innerhalb dieser Arbeit soll ein auf das Projekt zugeschnittener Ansatz des Swappings mit Hilfe eines Dateisystems entwickelt und hinsichtlich Zeit und Energieeffizienz evaluiert werden. Anschließend soll eine Möglichkeit entwickelt werden, dateisystemübergreifend Dateien zwischen einem PC und einem Sensorknoten über den COM-Port auszutauschen. Für diesen Teilabschnitt der Arbeit sollen bestehende Protokollansätze für eine Datenübertragung über den COM-Port untersucht und ggf. angepasst oder erweitert werden. Um für einen drahtlosen Sensorknoten eine Zustandsänderung über einen gewissen Zeitraum hinweg aufzuzeichnen, kann es sinnvoll sein Protokoll-Dateien anzulegen. Innerhalb dieser Dateien kann jeder Knoten für sich zu einem definierten Zeitpunkt, oder einem Intervall, alle Daten seiner angeschlossenen Sensorik persistent in eine Textdatei schreiben und damit protokollieren. Um dann innerhalb des Sensorknotens speichereffizient zu Arbeiten ist hier eine Lösung hinsichtlich Datenkompression zu finden, um nicht für jeden ASCII-codierten Buchstaben ein Byte Speicherplatz des Mediums belegen zu müssen.

Details

Aus dieser Aufgabenstellung ergeben sich folgende zu bearbeitende Teilaufgaben:

  • Analyse von Dateisystemen auf die Anwendbarkeit in Sensorsystemen.
  • Auswahl eines oder mehrerer geeigneter Dateisysteme.
  • Es ist mindestens ein Dateisystem zu implementieren, das die Anforderungen erfüllt.
  • Es sind alle nicht-flüchtigen Speichermedien auf den TriSOS-Knoten zu verwenden.
  • Als Anwendung soll eine virtuelle Speicherverwaltung implementiert werden.
  • Definition einer API um "Objekte" aus dem flüchtigen Arbeitsspeicher ein und auszulagern.
  • Effiziente Implementierung
  • Ausführliche Leistungsbewertung (Energie, Zugriffszeit, Speicherauslastung)
  • Vergleich der Speichermedien.
  • Unterstützung von großen Protokoll-Dateien
  • Robustheit
  • Wachsen von Dateien im Dateisystem

Aufgaben

  • Schriftliche Ausarbeitung, die den Fokus auf Bewertungskriterien und die Evaluation legt. keine technische Dokumentation!
  • Für die Technische Dokumentation: ausführlich dokumentierter, kommentierter Quelltext in Doxygen Formatierung (in englischer Sprache).