Software- & Prozessortechnik

Entwicklungen in der Embedded-Multicore-Virtualisierung meistern

23.07.12 | Autor / Redakteur: Markus Levy, Surender Kumar, Rajan Goyal * / Holger Heller

Multicore-Virtualisierung: jetzt auch im Embedded-Bereich erforderlich
Multicore-Virtualisierung: jetzt auch im Embedded-Bereich erforderlich

Viele Jahre lang war die Virtualisierung das Flaggschiff der Serverwelt. Die steigende Komplexität und Vielfalt der Embedded-Systeme verlangt nun aber nach einer Virtualisierungstechnik.

Das Versprechen einer universellen Rechenplattform, die viele unterschiedliche Dinge für viele verschiedene Anwender gleichzeitig erledigen kann, erfordert ein gewisses Management, wie diese Tätigkeit erledigt wird – und die Virtualisierung hat diese Rolle im Server-Bereich übernommen. Andererseits benötigte die Embedded-Welt bisher im Allgemeinen keine Virtualisierung. Dies ist ein weitreichender Faktor, weil Embedded-Geräte schon fast per Definition keine universellen Plattformen sind.

Ihre Aufgaben konnten per Handarbeit auf den niedrigsten Ebenen erledigt werden. Als allerdings die Komplexität und die Vielfalt der Embedded-Systeme mit der Zeit anstieg, wurde die Notwendigkeit einer Form von Virtualisierungs-Technologie offensichtlicher; immerhin gehören heutzutage Anwendungen wie Netzwerk-Ausrüstung und Smartphones zu den Embedded-Systemen.

Wie bei den meisten Technologien ist die Anwendung der Virtualisierung in Embedded-Systemen komplexer als bei ihrem Server-Cousin. Der einzige Grund hierfür ist die Tatsache, dass Embedded-Technologie dazu tendiert, arbeitsintensiver zu sein: Die Anzahl der Variationen, Kombinationen und Permutationen von Eigenschaften und Funktionen kann leicht außer Kontrolle geraten, so dass es für die System-Architekten und Entwickler schwierig wird, ihren Weg in diesem Universum zu finden.

Multicore Association ruft Virtualization Working Group ins Leben

Außerdem hat die rasche Verbreitung von Multicore-Prozessoren zusätzliche Anwendungsmöglichkeiten für die Virtualisierungstechnik geschaffen. Aus diesem Grund hat die „Multicore Association“ eine „Virtualization Working Group“ genannte Arbeitsgruppe zum Thema Virtualisierung einberufen. Die Teilnahme vieler verschiedener Unternehmen, die auf dem Embedded-Markt aktiv sind, wird dabei helfen, Standards zu etablieren, welche die Skala der Bedürfnisse und Anforderungen von den unterschiedlichen Zuständigkeitsbereichen innerhalb der Embedded-Welt berücksichtigen und angehen.

Warum virtualisieren? Bisher gab es zwei wesentliche Treiber für die Virtualisierung innerhalb von Servern. Der transparenteste davon ist das Ziel, einen einzelnen Computer für eine Benutzergruppe so aussehen zu lassen wie mehrere Computer. Es gibt in der Welt des „Cloud-Computing“ (Datenverarbeitung in der Cloud) hierfür einen ganz klaren Bedarf, der meist als „Multi-Tenanting“ bezeichnet wird, wobei die direkte, aber in diesem Zusammenhang ungebräuchliche deutsche Übersetzung den Grundgedanken von „Multi-Tenanting“ sehr gut wiedergibt: Mehrfach-Verpachtung/Vermietung.

Ein Anwender verbindet sich mit der Cloud und bekommt eine „Maschine“, aber diese Maschine ist virtuell und vielleicht nur ein Teil einer tatsächlich in Hardware existierenden Maschine. Die Beziehung zwischen der „Maschine“, die der Anwender wahrnimmt und der zugrundeliegenden Hardware ist komplett für den Anwender unsichtbar und wenn das System ordnungsgemäß realisiert ist auch irrelevant.

Alter Code muss auf neuen Maschinen laufen

Der andere wesentliche Treiber zur Server-Virtualisierung ist die Tatsache, dass alter Code (Legacy-Code) auf neuen Maschinen laufen muss. Solche alten Programme könnten beispielsweise veraltete Betriebssysteme benötigen oder nach Ressourcen beziehungsweise Ein-/Ausgabeschnittstellen suchen, die auf dem neuen System nicht existieren. Selbstverständlich will sich niemand irgendwo in die Nähe des Codes bewegen (selbst wenn der Source-Code verfügbar ist). Daher wickelt die Virtualisierung das Programm förmlich ein – und zwar in einer Art und Weise, bei der das Programm denkt, es wäre auf seiner ursprünglichen Zielplattform.

Bild 1: Virtualisierungsschicht als Host, der Daten und Dienste für die Gäste bereitstellt
Bild 1: Virtualisierungsschicht als Host, der Daten und Dienste für die Gäste bereitstellt

In beiden Fällen geht es dabei um einen einzelnen Computer, der auf der alleruntersten fundamentalen Ebene von einem einzelnen Betriebssystem (OS) betrieben wird, während oberhalb des Betriebssystems mehrere „Gäste“ (Guests) laufen. Bei diesen Guests handelt es sich um Gäste-Programme und/oder Gäste-Betriebssysteme. Die Virtualisierungs-Schicht fungiert dabei als Host, der Daten und Dienste für die Gäste bereitstellt. Zu dieser Host-Funktionalität gehören auch Umsetzungen, die erforderlich sind, um alle Beteiligten zufriedenzustellen (Bild 1).

Inhalt des Artikels:

»1 »2 »3 »4 nächste Seite

Kommentar zu diesem Artikel abgeben

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Spamschutz 

Bitte geben Sie das Ergebnis der Rechenaufgabe (Addition) ein:
Kommentar abschicken

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 34682990) | Archiv: Vogel Business Media

WIR AUF Facebook

Fachwissen für Elektronik-Entwickler

Immer Mittwochs plus zu ausgewählten Themen: Fachbeiträge und Design-Tipps für die professionelle Elektronikentwicklung. Incl. Wochenüberblick: Die wichtigsten und meistgelesenen Meldungen der letzten sieben Tage.

* Ich bin mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung und AGB einverstanden.
Spamschutz:
Bitte geben Sie das Ergebnis der Rechenaufgabe (Addition) ein.
Heftarchiv
ELEKTRONIKPRAXIS 15/2014

ELEKTRONIKPRAXIS 15/2014

Das Internet of Things ist mehr als die Summe seiner Teile

Weitere Themen:

Welches Display ist das richtige?
Datenmanagement mit C-Controller
Sicherungen für die Raumfahrt

zum ePaper

zum Heftarchiv

ELEKTRONIKPRAXIS 14/2014

ELEKTRONIKPRAXIS 14/2014

Wenn Optik und Haptik eines Displays entscheiden

Weitere Themen:

Verbesserte SiCLeistungs- MOSFETs
Theorie versus Prozesstoleranzen
Hardware Monitoring

zum ePaper

zum Heftarchiv

ELEKTRONIKPRAXIS 13/2014

ELEKTRONIKPRAXIS 13/2014

Perfekt aufgestellt für jede Gehäuse-Situation

Weitere Themen:

Das M2M-Protokoll OPC UA
Hohe Abtastrate und Bandbreite
Was AC-Quellen können müssen

zum ePaper

zum Heftarchiv