Real-Time Systems GmbH (RTS)
Partition where you can – Virtualize where you have to
Real Time Hypervisor
Esperti di Real-Time e
Sistemi Embedded
Real-Time Systems GmbH
Gartenstrasse 33
D-88212 Ravensburg
Germany
Partners strategici:
UN APPROCCIO INNOVATIVO
RTS Hypervisor
Un approccio innovativo per le tecnologie multicore:
Suddivisione delle risorse hardware sui core
Virtualizzazione solo dove si deve
TENDENZA DEL MERCATO
Performance
Architettura Intel e legge di Moore
Sviluppo dei processori
Multi-core
Single-core
2000
2004
2008
 Multi-core CPU consentono incrementi esponenziali di prestazioni
 Report VDC 2008: applicazioni MultiCore cresceranno dall‟attuale 6.3% al 27.7%
 Per sfruttarne le prestazioni è richiesto un “Software MultiCore ”
2009
Virtualizzazione tradizionale
VANTAGGI
LIMITI
2009
Hardware separati
Printer
Server
CRM
Server
DHCP
Server
GPOS
GPOS
GPOS
Linux
Windows
Windows
Hardware
Hardware
Hardware
6% Load
15% Load
5% Load
Applicazione tipica basata
su Hardware separati
…
2009
Virtualizzazione tradizionale
Virtualizzazione tradizionale
Printer
Server
CRM
Server
DHCP
Server
GPOS
GPOS
GPOS
Linux
Windows
Windows
Virtual HW
Virtual HW
Virtual HW
e.g. VMWare
Real Hardware
basata su SW VMWare
Hardware virtuale
…
Nuovo carico CPU:
5% + 6% + 15% + …
Goal: 65%
Separazione di sicurezza
2009
Virtualizzazione tradizionale
Benefici della consolidazione
 Massimizzare l„utilizzazione delle risorse del
processore
 Ridurre i costi dell„Hardware
 Ridurre il consumo e la dissipazione
 Ridurre spazio e pesi
 Aumentare l„MTBF
 Utilizzare sistemi operativi diversi in parallelo
2009
Benefici della Virtualizzazione
 Consolidare sistemi multipli in un singolo sistema
 Riutilizzo del software esistente
 Con la virtualizzazione, le applicazioni esistenti
girano sotto ciascun sistema operativo senza
modifiche
2009
Virtualizzazione tradizionale
I limiti
della virtualizzazione tradizionale
per le applicazioni Real Time
2009
Limiti della
Virtualizzazione tradizionale
• Il sistema operativo deve fare il boot
per primo
• Il sistema operativo Guest dipende dal
sistema operativo Host
• Il sistema operativo Host e il VMM
schedulano i processi
•Il Guest OS NON accede all‟hardware
• I Device sono solo Virtuali
• L‟ Host OS provvede i Driver
Esempi: VMWare, XEN, Hyper-V, Parallels, Virtual Box, KVM
2009
Limiti della
Virtualizzazione tradizionale
Hardware emulato o virtualizzato
 La Virtualizzazione aggiunge latenze





La virtualizzazione di MMU,
Interrupt Controller etc.
indebolisce il determinismo
del sistema
I tools di debug degli OS non
supportano i dispositivi SW di
Hypervisor
2009
Limiti della
Virtualizzazione tradizionale
Perdita del Real-Time!

Le chiamate I/O del sistema Guest passano
attraverso VMM e il sistema operativo Host.
Introducono latenza

Nessun accesso diretto hardware per il Sistema
operativo Guest

Il Sistema operativo Host + il VMM schedulano i
processi

Il sistema operativo Host deve sempre effettuare il
boot per primo

Il Sistema operativo Guest dipende dall‟ Host OS

L‟utilizzo di un RTOS come „Host‟ non migliora le
prestazioni Real Time (le indeterminatezze delle
“Exits” influenzano il determinismo RTOS)
RTS-Overview_2009_GL
2009
Windows in Secure Partition
Il funzionamento di Windows XP in una cella virtuale separata di un Sistema
operativo Real Time mette in pericolo il determinismo e aumenta i costi di test.



Virtual Machine, Memory Management
per Windows e GUI sono gestiti dal
Sistema operativo Real Time
I RTOS vengono “gonfiati” inutilmente
Nessun accesso hardware diretto per
Windows
L„accesso ai media di memorizzazione,
USB etc., lento a causa dei dispositivi
virtualizzati
2009
UN APPROCCIO INNOVATIVO
RTS Hypervisor
COME SUPERARE I LIMITI DELLA VIRTUALIZZAZIONE
La virtualizzazione diventa
PARTIZIONE:
assegnazione delle risorse hardware per ogni Core
Un sistema operativo dedicato per ogni Core
2009
Architettura tradizionale
User Interface
HMI / SCADA
Windows XP
x86 CPU
IPC
e.g.PLC or
Controller.
RTOS
ARM / PPC …
Embedded Ctrl.
Fieldbus or
RT Ethernet
Machine
TCP / IP (LAN)
2009
Architettura innovativa
Risparmio sui costi
Aumento dell‟MTBF
User Interface
HMI / SCADA
PLC or
Controller
Etc.
Razionalizzazione
TCP/IP
Windows XP
CPU 1
RTOS
CPU 2
Fieldbus / RT Ethernet
ATOM or DualCore HW
Machine
2009
RTS Hypervisor
PARTIZIONE invece di Virtualizzazione
Real-Time!
Esempio di un processore Core Duo










Accesso diretto all‟ hardware
Risorse assegnate in modo
esclusivo
Fino a 255 cores gestiti
Utilizzo di driver standard
Nessuna latenza (0 µs)
Isolamento completo dei sistemi
operativi in memoria
Nessuna dipendenza tra sistemi
operativi
Facile comunicazione tra i sistemi
Sequenza di boot definibile
Reboot independente dei sistemi
2009
Il futuro
Possibili Architetture Future



Gruppi di CPU core
Alcuni core eseguono un
sistema operativo
Alcuni core potrebbero
essere utilizzati con
funzionalità DSP
2009
Architetture supportate
Design Modulare e aperto
Possibilità:




Mix di differenti OS
Multipli dello stesso OS
Minimo un core per OS
Supporto Intel ATOM
(Versione HyperThreading)
Commercial
RTOS
WINDOWS
Proprietary
RTOS
LINUX
Architetture Intel
Multi-Core
Quad Core
Dual Core
2009
La gestione degli interrupt
RTS Hypervisor:
Nessun layer Software aggiunto
Esempio di due sistemi operativi
Su architettura Quad Core
RTS Hypervisor configura il
sistema in modo che tutti
gli Interrupt siano gestiti
direttamente in hardware.
Contrariamente ai
tradizionali sistemi di
virtualizzazione non
vengono aggiunte latenze
2009
Trusted rispetto a Virtualizzato
Un GPOS come Windows XP apre il sistema all‟utilizzatore finale.
Applicazioni e driver possono essere aggiunti con possibilità di blocchi
di sistema
RTOS Code è testato a fondo
L‟utilizzatore finale non può aggiungere drivers.
Questi sistemi operativi RTOS possono essere definit “TRUSTED”.
L‟accesso diretto all‟hardware comporta una grande responsabilità
L‟accesso diretto all‟hardware dovrebbe essere assegnato solo al
“trusted code” dei sistemi operativi Real Time
2009
Direct Hardware Access
„Partition where you can. Virtualize where you have to“
Optionally, an RTOS could also be
deployed using “Virtualization”.
For real-time applications it is
recommended to grant direct hardware
access to minimize latencies.
The RTS Real-Time Hypervisor virtualizes only hardware used by a General
Purpose Operating System (e.g. Windows XP), elements that play no role in
real-time system performance.
Comunicazione
Separazione al 100% – Come comunicano I sistemi?
Shared Memory
RTS Hypervisor consente di configurare
una o più aree di share memory.
Unico limite l‟ammontare della memoria di sistema
Un semplice API provvede agli accessi da ciascun
S.O. con meccanismi di Lock e di comunicazione.
Rete Virtuale
RTS Hypervisor provvede ai S.O. i driver di rete
che risiedono nella direttamente nella share memory.
Ciascun core può avere il proprio indirizzo IP e il proprio
MAC address.
Normali protocolli quali TCP-IP, OPC, CORBA etc.
possono essere usati per la comunicazione tra i core
2009
Utilizzo di schede di rete

Una scheda di rete può essere
assegnata a un solo sistema
operativo

Ogni sistema operativo può avere
una o più schede fisiche di rete.

Il Routing e il Bridging possono
essere usati con i driver virtuali
dell‟RTS

Altri core possono accedere
fisicamente a una scheda di un altro
sistema se reso disponibile dal
sistema operativo
2009
Configurare è semplice
Esempio: Windows XP con QNX 6.4
Virtualizzazione del SO GP
Definizione della sequenza di Start-up
Localizzazione dell„immagine del sistema.
In caso di XP definizione disco e partizione
Configurare è semplice
Assegna IO e interrupt delle porte Seriali
al sistema operativo specifico
Ciò che non è assegnato è destinato a XP
Configurare è semplice
Startup
Startup del Sistema:

Regolare esecuzione del BIOS

Start del Boot Loader

Il Boot Loader carica la Configurazione dell‟ Hypervisor (Text based “ini”-file) e
l‟immagine dell‟ RTOS in memoria

Il Boot Loader fa partire RTS Hypervisor come un sistema operativo

Hypervisor legge la configurazione di sistema, programma gli hardware interrupt
controller con assegnazione diretta dell‟hardware ai rispettivi cores, imposta MMU
etc.

Ogni sistema operativo parte nella sequenza designata.

I sistemi operativi sono ora in esecuzione.

RTS Hypervisor rimane in memoria per la sola gestione delle eccezioni.
2009
Riepilogo

PARTIZIONE invece di Virtualizzazione per accesso hardware diretto
per sistemi operativi Real-Time (“Trusted”) .
Nessun sistema è Host o Guest: i sistemi operativi sono uguali.
Non esiste alcuna dipendenza reciproca.

Interrupt controller non virtualizzati: operazioni Hard Real Time

L‟utilizzo della virtualizzazione per i sistemi operativi aperti, come ad
es. Windows, provvede ad una sicura separazione

Istanze multiple di un RTOS possono essere eseguite
contemporaneamente per bilanciare il carico degli interrupt e il design
modulare del sistema (Asymmetric Multi Processing)

Reboot indipendente di ogni sistema operativo mentre l‟altro sistema
operativo continua ad operare indisturbato
2009
Intel® Embedded
Alliance
http://www.intelcom
msalliance.com/ksh
owcase/view/view_p
rofile/8fc2fe50c6685
8c37337ca2a393412
5a7d9e7ddb
2009
Intel® Software
Partner
http://ibx.intel.com/direc
tory/productpage/tabid/8
5/language/en-us/p5501-rts-hypervisor.aspx
2009
QNX® Partner
http://www.qnx.com/partner
s/partner.html?partnerid=1
61592
2009
Windows® Embedded
Silver Partner
http://www.microsoft.com/
windowsembedded/enus/partners/partnerprofile.
mspx?CompanyProfileID=
36&Type=1
2009
Contatti
Real Time Systems GmbH
Gartenstrasse 33
D-88212 – Ravensburg - Germany
Contradata Milano srl
Via Solferino, 12
20052 Monza - Italy
Tel: +49 (0) 751.359.558-0
Fax: +49 (0) 751.359.558-20
www.real-time-systems.com
[email protected]
Servizio vendite Italia
[email protected]
Tel: (+39) 039-2301492
Fax: (+39)039-2301489
Assistenza
[email protected]
Tel: (+39) 039-2301492
Fax: (+39)039-2301489
Grazie per l‟attenzione
&
VI RINGRAZIANO PER L‟ATTENZIONE
2009