Abschlussbericht
Abschlussbericht
Abschlussbericht
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Abschlussbericht</strong><br />
Trusted Sensor Node<br />
C-Standardbibliotheken<br />
eCos stellt eine uITRON- und eine POSIX-API [57], [42] zur Verfügung, welche die Portierung<br />
von Anwendungen, die diese Schnittstellen nutzen, erleichtert. Weiterhin ist eine vollständige,<br />
multitasking-sichere ISO-C-Standardbibliothek verfügbar. Die ISO-C-Bibliothek<br />
umfasst zahlreiche Funktionen für Dateiein- und -ausgabe, String-Manipulation und Internationalisierung.<br />
Darüber hinaus existieren Portierungen für Bibliotheken wie zlib, mathlib und OpenSSL.<br />
Leider ist die OpenSSL-Implementierung bei der für den TSN eingesetzten eCos-Version<br />
nicht vollständig, sondern bietet nur eine Untermenge der aktuellen OpenSSL-Funktionalität.<br />
Da insbesondere Implementierungen für die Krypto-Module (AES, SHA1, ECC)<br />
des LEON2-Prozessorkerns nicht vorhanden sind, wird die OpenSSL-Komponente aktuell<br />
nicht verwendet.<br />
3.1.2 Hinzufügen von Komponenten<br />
Beim Hinzufügen von neuen Funktionen in das eCos kann zwischen zwei verschiedenen<br />
Vorgehensweisen gewählt werden. Zum einen kann man die neue Funktionalität in die<br />
Applikation integrieren. In diesem Fall steht sie nur dieser Applikation zur Verfügung und<br />
kann nur schwer erneut genutzt werden. Diese Variante empfiehlt sich für spezielle Funktionen,<br />
die nur einmal genutzt werden sollen. Sie hat den Vorteil, dass hiermit ein schnelles<br />
Prototyping möglich ist und man auf keine APIs von eCos achten muss. Die zweite Vorgehensweise<br />
ist das Erstellen eines neuen Packages. In diesem Fall wird die Funktion in<br />
eCos integriert und kann mittels des Konfigurationswerkszeugs in verschiedene Applikationen<br />
integriert und innerhalb andere eCos-Module verwendet werden.<br />
In diesem Abschnitt wird das Erstellen eines neuen Packages beschrieben. Hierbei wird<br />
zunächst allgemein auf die notwendigen Schritte eingegangen. Im zweiten Teil wird das<br />
Treiber API von eCos, welches die Grundlage für viele neue Funktionen bildet, erläutert.<br />
Packages<br />
Das Hinzufügen eines neuen Packages gliedert sich im Wesentlichen in zwei Schritte:<br />
1. Einbinden in das Repository<br />
2. Registrieren in der eCos-DB<br />
Zunächst muss im Repository ein neues Verzeichnis für die Komponente angelegt werden.<br />
Hierzu wählt man im Verzeichnis packages ein Unterverzeichnis aus, welches die<br />
neue Komponente am besten charakterisiert. Dort legt man einen Verzeichnisbaum, wie<br />
in Listing 3.1 beschrieben, an.<br />
48