Embedded-Systeme müssen in vielen Fällen mit der minimalen Hardware-Ausstattung zurechtkommen, die gerade noch für die zu lösende Aufgabe ausreicht. Außer am Speicher wird daher gerne auch an Ausstattung und Geschwindigkeit des Prozessors gespart: Neben der Fließkommaeinheit wird oft die Memory Management Unit (MMU) weggelassen, die für die Verwaltung des virtuellen Speichers notwendig ist. Doch Linux wäre nicht Linux, wenn es sich nicht flexibel auch diesen Anforderungen anpassen ließe.
PC-Betriebssysteme wie Linux setzen normalerweise eine MMU voraus, die wichtige Aufgaben erfüllt: Sie gewährleistet den Speicherschutz der Applikationen gegeneinander, damit ein Programm nicht den Speicherbereich eines anderen ändern kann, und verwaltet einen virtuellen Adressraum, damit der Compiler keinen positionsunabhängigen Code erzeugen muss und die Applikationen mehr Arbeitsspeicher anfordern dürfen als physikalisch vorhanden ist.
Üblicherweise finden wir in eingebetteten Systemen aber weder eine Festplatte für Swapspace noch eine Mehrbenutzerumgebung vor, so dass bei sorgfältigem Entwurf der Anwendungen mit Blick auf Speicherbedarf und Kooperation der Applikationen sogar auf die virtuelle Speicherverwaltung verzichtet werden kann.
Das kann bei Linux glücklicherweise ohne größere Änderungen am Kernel erreicht werden.
Historisches
Man braucht immer einige Verrückte, um solch ein Projekt anzugehen. In diesem Fall handelt es sich um Jeff Dionne und Kenneth Albanowski, die sich Anfang 1998 das ehrgeizige Ziel setzten, Linux auf einem Palm Pilot zum Laufen zu bringen. Die Resonanz auf dem Linux-Kongress 1998 in Köln war gemischt: Die Beobachtungen gingen von verwundertem Kopfschütteln bis zur Anerkennung der Genialität dieser Linux-Hacker.
Damals war Linux auf PDAs noch kein Thema und der Einsatz von Linux auf eingebetteten Systemen stand kaum zur Diskussion. Im Jahr 2001 sieht die Situation anders aus - Linux auf PDAs und Embedded Systems ist aktuell und uClinux ist eine zuverlässige Lösung für kostensensitive Linux-Anwendungen.
Stand der Dinge
Viele Linux-Entwicklungen abseits des Mainstream laufen Gefahr, dass sie mangels Interesse nach einiger Zeit der Euphorie einschlafen. Ein Beispiel dafür ist ELKS, die Portierung von Linux auf die pre-386 Intel-Prozessoren 8086, 8088 und 80286.
Das uClinux jedoch hat von Anfang an großen Anklang gefunden und ist mittlerweile auf eine große Anzahl von Plattformen portiert. Auch in einigen kommerziellen Produkten ist uClinux bereits erfolgreich. Neben den bisher verwendeten Systemkernen, die noch aus der 2.0er Serie stammen, ist seit kurzem eine erste Portierung des 2.4er Kernels für einige der Plattformen verfügbar - die 2.2er-Kernel-Serie wurde ausgelassen.
« Zurück
1
2
3
4
5
6
7
...
15
Weiter »