Embedded Linux im Automotivebereich Vortragender: Jan Horbach, Unicontrol Systemtechnik GmbH Die Firma Unicontrol Systemtechnik GmbH ist ein Softwaredienstleister im Bereich Automotive und Schiffskommunikation. Seit 2002 beschäftigt sich das Unternehmen mit Embedded Linux im Automotivebereich. Dieser Vortrag widmet sich dem Entwicklungsprozess eines Embedded Systems anhand von konkreten Projekten. Zuerst wird eine kurze Übersicht über einige Crosscompile-Entwicklungsumgebungen gegeben. Das schließt sowohl kommerzielle als auch frei erhältliche Entwicklungsumgebungen ein. Ebenfalls wird ein Blick über den Tellerrand gewagt und Tools für andere Betriebssysteme erwähnt. Weiterhin wird dargestellt, was man tun kann, wenn es keine passende Entwicklungsumgebung gibt oder diese zu teuer ist. Dann kann man den Weg bis zu einem lauffähigen Programm auf dem Target auch "zu Fuß" gehen. Im Vortrag wird gezeigt, wie man einen Crosscompiler baut, welche vorgefertigten Unterstützungen es gibt, welche Bibliotheken (glibc oder uclibc, evtl. dietlibc) man einsetzen sollte usw. Der nächste Schritt zu einem Embedded Linux ist die Einbindung eines Linux-Kernels, der für das konkrete Target compiliert wird. Teilweise sind Patches vonnöten, um exotischere Hardware zu unterstützen. Meist kommt man auch nicht um das Programmieren eigener Treiber herum. Unicontrol hat zum Beispiel Grafik- und CAN-Bus-Treiber entwickelt. Damit der Kernel später startet, braucht man einen Bootloader wie z.B. U-Boot. Doch mit dem Kernel allein kann man in den meisten Fällen recht wenig anfangen. Deswegen muss auch eine Sammlung an Bibliotheken und Tools vorhanden sein. Konkret sind das z.B. die Busybox und udev. Hier und bei Kerneltreibern ist auch großer Wert auf lizenzrechtliche Fragen zu legen, was an dieser Stelle kurz mit anklingen wird. Nun stellt sich die Frage, wie man die compilierten Bibliotheken und Programme aufs Target bekommt. Als zwei Alternativen sollen hier die Arbeit mit NFS und das Erstellen sowie Flashen von Images gezeigt werden. Am Ende steht die Erstellung einer auf den konkreten Anwendungsfall zugeschnittenen Applikation. Da nicht zu erwarten ist, dass diese auf Anhieb fehlerfrei funktioniert, ist ein Debugger meist sehr hilfreich. Im Vortrag wird dabei auf die Remote-Arbeit mit dem Debugger gdb und dem grafischen Interface ddd eingegangen. Vorwissen im Bereich gcc und make sind hilfreich. Weiterführende Links: http://www.unicontrol.de http://www.digitales-kombiinstrument.de http://www.linuxdevices.com http://www.busybox.net http://uclibc.org http://u-boot.sourceforge.net