T-Engine Offener Betriebssystem-Standard erobert Asien

Autor / Redakteur: Ken Sakamura, Michael Uelschen, Helmut Lucke / Martina Hafner

In Asien hat sich insbesondere in Japan weitgehend vom Westen unbeachtet der offene Standard T-Engine für eingebettete Systeme etabliert, der auch die kommende Generation von Multicore-Architekturen berücksichtigt.

Anbieter zum Thema

T-Engine basiert auf dem Projekt TRON, welches in Japan seinen Ursprung hat und 1984 unter der Führung von Ken Sakamura startete. TRON steht für „The Realtime Operating System Nucleus“. Ziel des Projektes war es, eine Rechnerarchitektur für zukünftige Systeme zu entwickeln, wobei eingebettete Systeme im Vordergrund stehen. Das TRON-Projekt betrachtete bereits frühzeitig die Vernetzung von einzelnen, eingebetteten und verteilten Systemen. Inzwischen setzen sich Synonyme wie “Ubiquitous Computing” oder “Pervasive Computing” durch. In Japan wurde durch TRON auch der Begriff „Computers Everywhere“ eingeführt.

Von mehreren TRON-Spezifikationen hat sich vor allem die ITRON-(Industrial-TRON-)Spezifikation in Japan und Teilen Asiens erfolgreich etabliert. Sie umfasst Betriebssysteme für Rechner mit 16-Bit und 32-Bit-CPU. Später wurde die Spezifikation für µITRON mit Unterstützung auch für 8-Bit-Rechner ergänzt. Das TRON-Projekt hat die Idee von Open Source und einer offenen Architektur von Beginn an unterstützt. So wurde der Quellcode einer Referenzimplementierung frühzeitig offen gelegt.

Die Gründe für die Popularität von ITRON sind zum einen die durchdachte Programmierschnittstelle und zum anderen die Kompaktheit. Schließlich unterstützt ITRON den Gedanken einer offener Architektur: es werden keine Lizenzkosten für die Verwendung der Spezifikation fällig.

T-Engine-Projekt: Hardwarestandardisierung

Das T-Engine-Projekt geht noch einen Schritt weiter. Es werden Anforderungen an die Hardware standardisiert, so dass auch standardisierte Entwicklungsboards inzwischen für ARM-, MIPS oder SH-basierte Architekturen verfügbar sind. Das standardisierte Betriebssystem des T-Engine Projekts heißt T-Kernel.

Das TRON-Projekt schrieb keine bestimmte Hardwarearchitektur vor. Dagegen besteht T-Engine aus einer Spezifikation und einer Implementierung eines Echtzeitbetriebssystems, dessen Quellcode vom T-Engine-Forum gewartet wird. Das erlaubt eine hohe Portierbarkeit der Middleware, so dass Middleware-Komponenten als kommerzielle Produkte von Drittanbietern vertrieben werden können.

Die Benutzung von Middleware ist ein Grundgedanke zur Rationalisierung des Entwicklungsprozesses. Daher wurde beim Entwurf der APIs der Portierbarkeit Vorrang vor der Optimierung für kleine Prozessoren gegeben. Mit diesem Ansatz versucht das T-Engine-Forum Systementwickler, Toolketten-Anbieter, Gerätehersteller und Halbleiterfirmen zusammenzubringen um einen möglichst kostengünstigen und schnellen Entwicklungsprozess zu ermöglichen.

T-Engine als Entwicklungsumgebung

T-Engine gliedert sich in vier Ausbaustufen abhängig von der Geräteklasse: Standard T-Engine, Mikro-T-Engine, Nano-T-Engine und Pico-T-Engine abhängig vom Anwendungseinsatz.

  • Standard T-Engine: Entwicklungsplattform, ausgestattet mit Benutzerschnittstellen z.B. für Monitor und Touchpad, für komplexe eingebettete Geräte wie beispielsweise PDA, Mobiltelefone, intelligente Hausgeräte, Navigationsgeräte oder Set-Top-Boxen.
  • Mikro-T-Engine: Entwicklungsplattform, die für Steuergeräte mit hohen Antwortverhalten für Industrieautomatisierung, Messgeräte oder Verkaufsautomaten ausgelegt wurde, entworfen für Systeme mit einer eingeschränkten Benutzerschnittstelle,
  • Nano-T-Engine: Nano-T-Engine ist gedacht für einfache, kabelgebundene Steuergeräte beispielsweise zur Beleuchtung. Mehrere Nano-T-Engine-Geräte kommunizieren mit dem UNP Protokoll (Ubiquitous Network Protocol).
  • Pico-T-Engine: Die Plattform ist für sehr kleine und extrem stromsparsame Geräte gedacht, die in einem kabellosen Netzwerk kommunizieren.

T-Kernel

Bild 1 zeigt die Evolution von T-Kernel: Unterstützt werden 8, 16 und 32 Bit sowie zukünftig Mehrprozessor- und Mehrkernarchitekturen (Archiv: Vogel Business Media)

In aktuellen, eingebetteten Systemen kommen sowohl 32-Bit RISC- als auch 8-Bit- oder 16-Bit-Prozessoren zum Einsatz. Zukünftig werden diese um Mehrprozessor- bzw. Mehrkernarchitekturen für Anwendungen bei multimedialen Geräten als auch im automotiven Umfeld erweitert. T-Kernel unterstützt alle diese Systeme durch eine einheitliche Architektur (Bild 1).

Standard T-Kernel ist das zentrale Betriebssystem des T-Engine Projekts. Es wurde für 32-Bit Prozessoren entworfen und unterstützt komplexe Hardware-Architekturen, z.B. Systeme mit MMU (Memory Management Unit). Als Standard ist die T-Kernel-Spezifikation abgeschlossen und Änderungen sind zukünftig nur in geringem Umfang zu erwarten. Sie betreffen hauptsächlich die Referenzimplementierung um die Softwarequalität zu verbessern.

Optionale Varianten des Kernels

Die Erweiterung T-Kernel/Standard Extension (TKSE) wurde optional eingeführt, um für bestimmte Geräteklassen zusätzliche Funktionen bereit zu stellen. Dieses betrifft insbesondere die Speicherverwaltung, so dass unterschiedlich geschützte Speicherbereiche analog einem Prozessmodell in konventionellen Betriebssystemen verwendet werden können.

Die Multiprocessing-Variante MP T-Kernel ist ein Echtzeitbetriebssystem, das mehrere parallel arbeitende Rechenkerne unterstützt (Multiprozessoren wie auch Multicore-Systeme). Multiprozessorsysteme gliedern sich in asymmetrische (AMP) und symmetrische (SMP) Architekturen. AMP definiert für jeden Prozessor (oder Kern) ein eigenes Verhalten. Hierdurch ist es einfacher möglich, Legacy-Software zu portieren, da eine gegenseitige Beeinflussung der Prozessoren bzw. Kerne minimiert wird. Auch gleicht die Programmierung von solchen Systemen denen von konventionellen.

Bei SMP-Systemen werden alle Prozessoren bzw. Kerne vom Betriebssystem gleich behandelt und verwaltet. Für eine Anwendung ist es transparent, wo diese ausgeführt wird. Der SMP-Ansatz führt zu einer verbesserten Ressourcennutzung. Allerdings ist die Programmierung aufgrund der Parallelität ungleich komplexer. MP T-Kernel unterstützt beide Spielarten AMP und SMP abhängig von der gewählten Systemauslegung.

Tools, Lizensierung, Forum

Für die T-Engine Plattform gibt es diverse Entwicklungsumgebungen von verschiedenen Anbietern wie z.B. eSOL. ICE Hardware Debugger sind ebenfalls verfügbar.

Der T-Kernel Quelltext ist kostenfrei unter den T-License-Bedingungen erhältlich und kann von der Web-Seite des T-Engine-Forums geladen werden. Die Lizenzbedingungen erlauben es, anders als bei Open-SourceLizenzen wie der GNU Public License, den Quelltext zu verändern ohne diese Änderungen zu veröffentlichen. T-Kernel ist direkt für kommerzielle Systeme gedacht: Es ist möglich, Erweiterungen nicht zu veröffentlichen, teilweise zu veröffentlichen, nur bestimmten Personenkreisen zugänglich zu machen, oder auch zu verkaufen. Mit anderen Worten, Änderungen sind keinem Zwang unterworfen. Lediglich auf die Verwendung von T-Kernel muss hingewiesen werden.

Das T-Engine Forum wurde im Juni 2002 gegründet worden, um die T-Engine Architektur und Ubiquitous Computing in Forschung, Entwicklung und Standardisierung zu unterstützen und voranzutreiben. Die internationale Institution vereint weltweit ungefähr 300 Organisationen als Mitglieder.

Verbreitung von ITRON/T-Kernel

Bild 2: Erhebung Marktanteile Betriebssysteme in Japan. Die Daten basieren auf einer Befragung der Embedded Technology ET2007 Konferenz, einer der größten ihrer Art in Japan. (Archiv: Vogel Business Media)

Betriebssysteme basierend auf der ITRON-Spezifikation haben großen Erfolg in Japan und Asien. Eine jährliche Erhebung zeigt, dass Systeme mit ITRON und dem Nachfolger T-Kernel einen Anteil von mehr als 40% für leistungsstarke eingebettete Systeme in Japan haben (Bild 2). Diese Daten basieren auf einer Befragung der Embedded Technology ET2007 Konferenz, einer der größten ihrer Art in Japan.

Produkte, die ein Betriebssystem einsetzen, welches auf der ITRON- oder T-Kernel Spezifikation basieren, sind: Digitalkameras, Drucker, Fax und Kopierer, Mobiltelefone, Geräte zur Audio/Video-Schnittbearbeitung sowie Anwendungen im Fahrzeug.

*Dr. Michael Uelschen hat als Software-Entwicklungsleiter die Einführung von T-Engine durchgeführt und ist seit dem Wintersemester 2009/10 Professor für Software-Engineering für technische Systeme an der FH Osnabrück.

*Dr. Helmut Lucke hat langjährige Erfahrung in der Embedded SW Entwicklung in der Robotik und im automotiven Umfeld. Die Plattform-Entwicklung auf Basis von T-Engine hat er als Projektleiter verantwortet. Es ist erreichbar unter der folgenden email-Adresse: hlucke@de.adit-jv.com

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

(ID:313951)