Abstract: |
eCos [0] ist ein embedded Betriebssystem das, ursprünglich von Cygnus
entwickelt, später bei Red Hat landete und jetzt von einem eigenen
Unternehmen, eCosCentric [1], mit weiterentwickelt wird.
Aus der Zeit von Red Hat stammt der Bootloader RedBoot ("Red hat
Embedded Debug and BOOTstrap firmware) [2] der den eCos
Hardware Abstraction Layer verwendet.
eCos ist ein "single process, multiple thread operating environment",
d.h. es können threads verwendet werden, das entstehende Image besteht
aus den Routinen des Betriebssystems zusammen mit dem Anwendungscode.
Zielarchitekturen sind 16-32-bit Prozessoren, typscherweise ohne Memory
Management Unit (MMU). Damit füllt eCos eine Lücke zwischen 8-bit
embedded Devices (z.B. Arduino [3]) und 32- bzw. 64-bit Systemen mit MMU
(Linux).
Einer der Hauptvorteile von eCos ist die Konfigurierbarkeit, es ist
möglich, fast alle Subsysteme zur Compile-Zeit aus- bzw. einzuschalten.
Falls z.B. kein Netzwerk benötigt wird, wird der komplette TCP/IP-Stack
nicht zur Anwendung hinzugelinkt und spart damit Ressourcen. Andere
Subsystem sind z.B. ein Posix-compatibility layer oder ein JFFS2
Filesystem.
Der Vortrag gibt eine Kurzeinführung in eCos, beschreibt Erfahrungen bei
der Portierung einer existierenden Linux-Anwendung auf eCos, und gibt
einige "Lessons Learned", Dinge die man beachten sollten wenn man
Anwendungen auf eCos portiert.
[0] http://ecos.sourceware.org/
[1] http://www.ecoscentric.com/
[2] http://sources.redhat.com/redboot/
[3] http://arduino.cc/
|