Produkte

Array ( [0] => stdClass Object ( [lang_id] => 2 [lang_code] => de-DE [title] => Deutsch [title_native] => Deutsch [sef] => de [image] => de [description] => [metakey] => [metadesc] => [sitename] => [published] => 1 [access] => 1 [ordering] => 0 [active] => 1 [display] => 1 [link] => /de/ ) [1] => stdClass Object ( [lang_id] => 1 [lang_code] => en-GB [title] => English (UK) [title_native] => English [sef] => en [image] => en [description] => [metakey] => [metadesc] => [sitename] => [published] => 1 [access] => 1 [ordering] => 1 [active] => [display] => 1 [link] => / ) )

RTS Hypervisor FAQ Liste

 

  • Wieviele Betriebssysteme können mit dem RTS Hypervisor gleichzeitig ausgeführt werden?

    Da einzelne CPUs exklusiv an die verschiedenen Betriebssysteme zugewiesen werden, können genau soviele Betriebssysteme ausgeführt werden, wie die Hardware CPUs zur Verfügung stellt. Dies gilt auch für logische CPUs wie sie auf Prozessoren mit Hyper-Threading Architektur, z.B. bei Intel Atom, zu finden sind.

 

  • Wird Symmetrisches Muli Processing (SMP) für die Gastbetriebssysteme unterstützt?

    Ja, ein Gastbetriebssystem kann mehrere zugewiesene Prozessoren in SMP Modus nutzen

 

  • Welche Betriebssysteme werden unterstützt?

    Momentan unterstützt der Hypervisor Microsoft Windows 10 und älter, Windows Embedded Compact, VxWorks, RTOS-32, QNX, OS-9, Linux und Echtzeit-Linux, RedHawk, T-Kernel. Andere Betriebssysteme oder eigener Echtzeitcode kann jederzeit auf Anfrage integriert werden.

  

  • Wie wird der RTS Hypervisor klassifiziert?

    Der RTS Hypervisor ist ein "Typ 1" Hypervisor, auch "Bare-Metal Hypervisor" genannt. Das bedeutet, dass kein Host-Betriebssystem verwendet wird. Die Betriebssysteme laufen komplett unabhängig voneinander; kein bestimmtes Betriebssystem muss ausgeführt werden. Konfigurationen mit mehreren Instanzen eines RTOS oder einer Mischung aus z.B. Windows, Linux und anderen können auf einfache Art und Weise erstellt werden.

 

  • Was ist ein typischer Anwendungsfall?

    Die meisten unserer Kunden hatten vorher mehrere verteilte Computersysteme für verschiedene Aufgaben. Zum Beispiel ein Windows PC für die Benutzerschnittstelle und ein zweites System für die Echtzeitsteuerung, z.B. einen ARM oder PPC, auf dem ein Echtzeitbetriebssystem lief. Mit dem RTS Hypervisor konnten diese Systeme auf eine einzige x86 Plattform integriert werden.

    Zudem gibt es Anwendungsfälle, bei denen der RTS Hypervisor mehrere Instanzen des selben Betriebssystems ausführt, um optimale Lastverteilung, Überwachung, Redundanz oder einfach nur Hardwarekonsolidierung zu erreichen.

    Immer wenn Kosten, Größe, Gewicht oder Energie begrenzt sind oder reduziert werden müssen, ist der RTS Hypervisor vielleicht die richtige Lösung. Gleichzeitig kann die Ausfallwahrscheinlichkeit verringert werden, wodurch eine höhere Zuverlässigkeit erreicht wird.

 

  • Basiert der RTS Hypervisor auf einer anderen Virtualisierungslösung, wie KVM oder XEN?

    Nein, der RTS Hypervisor verwendet keine Drittsoftware. Die Virtualisierungssoftware wurde speziell für die Zielmärkte der Echtzeit- und embedded Anwendungen entwickelt. Im Gegensatz zu anderen Virtualisierungslösungen kann nur der Ansatz "partitioniere wo möglich - virtualisiere wo nötig" zu harter Echtzeit und deterministischem Verhalten führen.

 

  • Wie kann der RTS Hypervisor virtualisieren und gleichzeitig die Echtzeitfähigkeit nicht beeinflussen?

    Der RTS Hypervisor bietet zwei Möglichkeiten, ein Betriebssystem auszuführen:

    1. Der vollvirtualisierte Modus, in welchem Betriebssysteme völlig unmodifiziert in einer virtuellen Maschine laufen. In diesem Modus wird garantiert, dass das virtualisierte Betriebssystem in keinem Fall andere, parallel laufende, Betriebssysteme beeinträchtigen kann. Jedoch ist bei Vollvirtualisierung mit kleinen Performance-Einbußen zu rechnen.

    2. Um harte Echtzeitfähigkeit und Determinismus für Echtzeitcode oder Echtzeitbetriebssysteme zu ermöglichen, bietet der RTS Hypervisor den sogenannten "privilegierten Modus". Im privilegierten Modus haben Betriebssysteme direkten Hardware-Zugriff und verwenden eine vom Hypervisor bereitgestellte Paravirtualisierungsschnittstelle. Dadurch behalten Betriebssysteme ihre ursprüngliche Performance bei und es werden keinerlei Latenzen durch den Hypervisor hinzugefügt.

    3. Zugriffe auf geteilte Ressourcen wie einen gemeinsamen Level 3 Cache oder auf den Speicherbus können mit dem RTS Hypervisor priorisiert werden, um Jitter zu reduzieren.

 

 

  • Kann ich mein eigenes RTOS oder anderen Echtzeitcode in den RTS Hypervisor integrieren?

    Absolut! Der RTS Hypervisor bietet eine einfache API und Beispiele um ein eigenes Betriebssystem, BSP (Board Support Package) oder einfach nur betriebssystemlosen Echtzeitcode in den Hypervisor zu integrieren. Sobald die Portierung auf die Paravirtualisierungsschnittstelle erledigt ist, kann das Betriebssystem oder der Echtzeitcode in jeder Kombination mit anderen vom Hypervisor unterstützten Betriebssystemen auf der selben Hardware ausgeführt werden. Ebenso können mehrere Instanzen des portierten Code oder OS betrieben werden.

 

  • Wie kommunzieren die Systeme?

    Die meisten bestehenden, verteilten Systeme kommunizieren über TCP/IP. Um den Umstieg so einfach wie möglich zu gestalten, bietet der RTS Hypervisor ein hochperformantes, interruptgetriebenes virtuelles Netzwerk. Neben dem virtuellen Netzwerk kann auch Shared Memory für schnellen Datenaustausch und Synchronisierung zwischen den Betriebssystemen genutzt werden. Zusätzlich bietet der RTS Hypervisor ein Event System zum Austausch von Events zwischen den einzelnen Betriebssystemen. Dieses Event System ist mittles Inter-Prozessor-Interrupts (IPI) implementiert, um eine Nutzung für Echtzeitanwendungen zu ermöglichen.

 

  • Was ist mit Shared Interrupts?

    Um harte Echtzeit zu ermöglichen, werden Interrupts exklusiv an die einzelnen Betriebssysteme zugewiesen. Konflikte bei der Zuweisung von Geräten an verschiedene Betriebssysteme können durch Nutzung der MSI-Unterstützung (Message Signaled Interrupt) des RTS Hypervisor vermieden werden - egal ob das Betriebssystem im privilegierten oder im vollvirtualisierten Modus läuft. Interrupts müssen nicht durch den Hypervisor verarbeitet werden sondern werden in Hardware direkt an die entsprechenden Prozessorkerne geleitet. So wird die ursprüngliche Performance beibehalten und die normalen Gerätetreiber können genutzt werden, ohne geändert werden zu müssen.

 

  • Kann ich Standard-Gerätetreiber verwenden?

    Ja, indem physikalische Geräte exklusiv an die Betriebssysteme zugewiesen werden, können Standard-Gerätetreiber genutzt werden, ohne portiert werden zu müssen - egal ob das Betriebssystem im privilegierten oder im vollvirtualisierten Modus läuft. Alle vom OS unterstützen Gerätetreiber, die ohne Hypervisor funktionieren können auch mit RTS Hypervisor verwendet werden.

 

  • Müssen die Betriebssysteme "in den RTS Hypervisor" oder in eine virtuelle Machine installiert werden?

    Nein. Erfordert ein Betriebssystem, z.B. Microsoft Windows, eine Installation auf Festplatte, so können Sie erst das Betriebssystem (oder die Betriebssysteme) installieren und dann den Hypervisor installieren. Sollten die Betriebssysteme keine Installation benötigen, können die betreffenden Dateien auch direkt von einem vorgegebenen Verzeichnis oder Medium geladen werden.

 

  • Wie bootet das System?

    Nach der normalen BIOS-Ausführung lädt ein Bootloader den RTS Hypervisor, welcher dann die Hardware initialisiert und die verschiedenen Betriebssysteme in der konfigurierten Reihenfolge startet. Sowohl Bootloader als auch Hypervisor können so eingestellt werden, dass sie für den Endbenutzer unsichtbar sind.

 

  • Kann ich meinen eigenen Bootloader verwenden?

    Ja, der RTS Hypervisor kann von jedem multiboot-konformen Bootloader geladen werden.

 

  • Kann 3D Grafik, Open GL, direct3D genutzt werden?

    Ja, wenn eine phyikalische Grafikkarte an ein Betriebssystem zugewiesen wird, kann der normale Videotreiber genutzt werden und der volle Funktionsumfang bleibt verfügbar.

 

  • Kann ich die Betriebssysteme unabhängig voneinander neu starten?

    Ja, alle unter dem RTS Hypervisor laufenden Betriebssysteme sind unabhängig voneinander und können jederzeit neu gestartet werden, ohne parallel ausgeführte Betriebssysteme zu beeinträchtigen.

 

  • Wie kompliziert ist Installation und Konfiguration?

    Konfiguration für eine beliebige Hardware ist eine Sache von Minuten und kann vom Benutzer selbst erledigt werden. Für die Installation ist keine genaue Kenntnis von Hardware, I/O oder Speicher nötig. Eine einfache Konfigurationsdatei wird genutzt um Gastbetriebssysteme, Gerätezuweisungen, Startreihenfolge, usw. festzulegen. Die Einrichtung eines frisch installieren Betriebssystems dauert in der Regel länger als die Installation des RTS Hypervisor.

 

  • Wie lange ist die Lernkurve mit dem RTS Hypervisor?

    Nachdem das System aufgesetzt ist können Entwickler sofort und ohne Schulung mit ihrer Arbeit anfangen. Die gesamte Entwicklung, Debugging, Tools, usw. sind identisch zur Entwicklung mit einem System ohne Hypervisor.

 

  • Wie kann man debuggen?

    Alle bestehenden Debug-Tools und -Schnittstellen können genutzt werden. Das gilt für Kernel Debugging ebenso wie für Application Debugging. Das Besondere am RTS Hypervisor ist die Möglichkeit, das Echtzeitsystem über das virtuelle Netzwerk von z.B. Windows 8, das auf einem anderem Prozessorkern läuft, zu debuggen. Kein spezielles Tool und keine Schulung ist erforderlich.


    Wenn Sie weitere Fragen haben oder eine Evaluierungsversion möchten, schreiben Sie bitte an folgende E-Mail Adresse: Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!

(Durch die sehr starke Nachfrage sind Evaluierungen zur Zeit nur möglich wenn Sie ein aktuelles Projekt haben. Wir bitten um Ihr Verständnis)

FaLang translation system by Faboba
Array ( [0] => stdClass Object ( [lang_id] => 2 [lang_code] => de-DE [title] => Deutsch [title_native] => Deutsch [sef] => de [image] => de [description] => [metakey] => [metadesc] => [sitename] => [published] => 1 [access] => 1 [ordering] => 0 [active] => 1 [display] => 1 [link] => /de/ ) [1] => stdClass Object ( [lang_id] => 1 [lang_code] => en-GB [title] => English (UK) [title_native] => English [sef] => en [image] => en [description] => [metakey] => [metadesc] => [sitename] => [published] => 1 [access] => 1 [ordering] => 1 [active] => [display] => 1 [link] => / ) )