events

DESIGN&ELEKTRONIK-Entwicklerforum HMI – Komponenten & Lösungen
DESIGN&ELEKTRONIK-Entwicklerforum HMI – Komponenten & Lösungen

Am 24. Mai 2012 findet das DESIGN&ELEKTRONIK-Entwicklerforum »HMI – Komponenten & Lösungen« mit begleitender Fachausstellung statt. Die Themen: »Bedienen und Beobachten: Technik, Know-how und Tools für das Design moderner Benutzerschnittstellen«.

Melden Sie sich jetzt an…

DESIGN&ELEKTRONIK-Entwicklerforum »Embedded-System-Entwicklung«
DESIGN&ELEKTRONIK-Entwicklerforum »Embedded-System-Entwicklung«

Auch in diesem Jahr veranstaltet die DESIGN&ELEKTRONIK wieder das Entwicklerforum »Embedded-System-Entwicklung« am 11. und 12. Juli 2012 in München. Neben einem technisch anspruchsvollen Vortragsprogramm ermöglichen verschiedene Workshops den Teilnehmern einen differenzierten Einblick in die Thematik.

Ausführliche Informationen:
www.embedded-entwicklerforum.de

Produkte des Jahres 2012

Linux /ARM

Linux: Embedded für alle
Linux: Embedded für alle

Linux ist heute erste Wahl geworden, wenn es um die Entscheidung für ein Betriebssystem in einem leistungsfähigen Embedded-System geht. Wie kann es sein, dass eine Open-Source-Software gerade bei Embedded-Systemen so erfolgreich ist?

Konferenz für ARM-Systementwicklung
Konferenz für ARM-Systementwicklung

Die große Konferenz für ARM-Systementwicklung am 11. und 12. Juli 2012 in München bietet Entwicklern die Gelegenheit, sich detailliertes Wissen über die aktuellen Cortex-Architekturen anzueignen, die mittlerweile zum Industriestandard avanciert sind.

Ausführliche Informationen:
www.arm-entwicklerkonferenz.de

embedded world Technology Report

Android & Embedded
embedded world Technology Report

Welche Embedded-Trends zeichnen sich ab? Im »embedded world Technology Report« gibt ein unabhängiger Expertenrat einen exklusiven Einblick in aktuelle Entwicklungen und zukünftige Trends im Embedded-Bereich.

Interessiert? Hier geht es zum kostenlosen Download

embedded world special

embedded world 2012
embedded world 2012

Wir haben aktuell von der weltgrößten Messe für die Embedded-Branche mit News, Videobeiträgen und Produktneuheiten berichtet.

Windows Embedded Standard 7

Windows Embedded Standard 7
Windows Embedded Standard 7

Was ist neu in Windows Embedded Standard 7? Lesen Sie alles rund um das neue Microsoft-Embedded-Betriebssystem Embedded Standard 7 in unserem Spezial.


Windows 7 - Special zum Download

Windows 7 -Special zum Download
Windows 7 -Special zum Download

20 Seiten Fachwissen – Das Windows-Embedded-Special als PDF-Download.


Marktübersichten Embedded

Marktübersichten aus dem Bereich Embedded

Software im sicherheitskritischen Bereich

Entwicklungssoftware
Entwicklungssoftware

Um die »Worst-Case Execution Time« zu erhalten, gibt es verschiedene Herangehensweisen – bequeme und weniger bequeme.


28. Oktober 2011
Embedded-Betriebssysteme

Linux: Embedded für alle

Linux ist heute erste Wahl geworden, wenn es um die Entscheidung für ein Betriebssystem in einem leistungsfähigen Embedded-System geht. Wie kann es sein, dass eine Open-Source-Software gerade in einem in jeder Hinsicht kritischen Bereich wie bei Embedded-Systemen so erfolgreich ist? Dieser Artikel beschreibt die Hintergründe und erläutert die einzelnen Aspekte der ungewöhnlichen Erfolgsgeschichte von Linux.

Von Heinz Egger, Casten Emde und Thomas Gleixner

Anzeige

Als Linus Torvalds im August zu Linux schrieb „Wird nichts Großes“ und im Oktober 1991 den Quellcode für Linux 0.02 verfügbar machte, ahnte keiner, dass bereits im März 1992 mit der Version 0.95 ein für viele Anwendungen brauchbares Betriebssystem zur Verfügung stehen würde. Und natürlich konnte auch keiner vorhersehen, dass knapp 20 Jahre später aus den weniger als 200.000 Zeilen Quellcode der Version 0.95 mehr als 13 Millionen Zeilen in Version 3.0 würden. Heute unterstützt Linux praktisch alle relevanten Prozessor-Architekturen und Hardware-Geräte und damit mehr als jedes andere Betriebssystem.

Seit Februar 1992 wird Linux unter der GNU General Public License (GPL) lizenziert. Die mit dieser Lizenz verbundene garantierte Freiheit und uneingeschränkte Verwendbarkeit, die im Gegensatz zur Lizenzierung des damals alternativen Minix stand, waren sicher wichtige Gründe, warum Linux weltweit so viele Mitarbeiter begeistern konnte und eine so rasche Entwicklung nahm. Die Wahl der GNU GPL hat Linux Torvalds 1997 mit den Worten kommentiert: „Linux unter die GPL zu stellen, war eindeutig das Beste, was ich jemals getan habe.“

Bis auf den Desktop-PC hat Linux in praktisch allen Bereichen der Computerbranche eine dominierende Position eingenommen. Den wohl höchsten Anteil hat Linux bei Supercomputern mit über 90 % erreicht; aber auch in anderen Bereichen wird Linux in nennenswertem Maße eingesetzt. Der Marktanteil von Linux in Embedded-Systemen kann nicht genau angegeben werden, weil verlässliche Daten dazu nicht öffentlich verfügbar sind. Allgemein wird aber davon ausgegangen, dass Linux bei zur Zeit neu entwickelten Embedded-Systemen eine Führungsrolle eingenommen hat.

Hürden: Portierbarkeit, Echtzeit-Fähigkeit, Zertifizierung

Die oben genannten frühen Versionen von Linux waren ausschließlich auf Systemen mit Intels 32-bit-Architektur lauffähig, und Linus Torvalds selbst hielt anfänglich eine Portierung auf andere Architekturen für praktisch ausgeschlossen. Aber bereits ab 1994 begannen Aktivitäten, Linux auch auf andere Architekturen zu portieren. Dies betraf etwa gleichzeitig PowerPC- und ARM-Prozessoren, die heute weitgehend uneingeschränkt in allen ihren Subarchitekturen und Facetten von Linux unterstützt werden. Damit war eine wesentliche Voraussetzung für den Einsatz von Linux in Embedded-Systemen erfüllt.

Die wohl spektakulärste Portierung führte zu ersten offiziellen Kernel-Patches im Dezember 1999 und bereits wenige Monate später zu einer lauffähigen Distribution: Linux auf IBM-Mainframes. Offensichtlich läuft heute ein bedeutender Anteil dieser Systeme unter Linux. Diese Portierung erhöhte natürlich das Vertrauen in das Linux-Betriebssystem und dessen Portierbarkeit, und es folgten viele weitere Architektur-Ports.

Als eine zweite wichtige Voraussetzung, die ein Betriebssystem für Embedded-Systeme erfüllen muss, ist die Echtzeit-Fähigkeit zu nennen. Zwar gilt diese Anforderung nur für eine Minderheit der heute eingesetzten Embedded-Systeme. Aber es wird häufig diskutiert, dass zukünftige Anwendungen und weiterentwickelte Versionen möglicherweise ein deterministisches Antwortverhalten benötigen, und deshalb entscheidet man sich vorsichtshalber in vielen Fällen gleich für ein Echtzeit-Betriebssystem - speziell auch unter Berücksichtigung der langen Produktlebensdauer von Embedded-Systemen. Dies stellte nun eine besondere Herausforderung für Linux dar; denn bis vor einigen Jahren ging man davon aus, dass ein Echtzeit-Betriebssystem von der ersten Zeile an mit besonderer Berücksichtigung dieser Eigenschaft geschrieben werden muss.

Dies war bei Linux natürlich nicht der Fall, und die nachträgliche Ausrüstung eines Betriebssystem-Kernels mit Echtzeit-Fähigkeit wurde als unmöglich angesehen. Auf der anderen Seite hat aber ein General-Purpose-Betriebssystem mit Echtzeit-Fähigkeit ein extrem großes Potential wie z.B. die folgenden Anwendungen:

Vergleich der beiden Zugangsweisen, Echtzeit-Fähigkeit des Linux-Kernels herzustellen.
OSADL 
zoom
Bild 1. Vergleich der beiden Zugangsweisen, Echtzeit-Fähigkeit des Linux-Kernels herzustellen.
Audio-Recording und Audio-Playback auf Standard-PC-Hardware,
Video-Recording und Video-Playback auf Standard-PC-Hardware,
Transaktions-Server mit genauen Zeitstempeln, z.B. Highspeed-Trading,
Automatisierungs-Industrie.

Der rasche Task- und Kontextwechsel bei Echtzeit-Fähigkeit stellt hohe Ansprüche an die korrekte Serialisierung von Zugriffen auf exklusive Ressourcen des Betriebssystems und der Hardware.

Dadurch können Fehler schneller und zuverlässiger aufgedeckt werden, so dass eine allgemeine Qualitätsverbesserung des Kernels eintritt, die auch für den Betrieb ohne Echtzeit-Fähigkeit gilt. Um Linux Echtzeit-Eigenschaften zu geben, wurden etwa ab 1999 gleichzeitig zwei sehr verschiedene Wege gegangen (Bild 1): Single-Kernel und Dual-Kernel.