Integrating Linux and the real-time ERIKA OS through the Xen hypervisor
-
Upload
arianna-avanzini -
Category
Documents
-
view
137 -
download
1
Transcript of Integrating Linux and the real-time ERIKA OS through the Xen hypervisor
Integrating Linux and the real-time ERIKA OSthrough the Xen hypervisor
Arianna Avanzini
29 Ottobre 2014
Relatrice CorrelatoreProf.ssa Letizia Leonardi Prof. Paolo Valente
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Contributo della tesi
Realizzazione di un’infrastruttura che consente l’esecuzioneparallela di un sistema operativo real-time ed un sistema
operativo general-purpose su un’unica board
Mediante una soluzione che apre la strada alla protezionedell’integrita dei sistemi operativi
Non fornita in soluzioni pre-esistenti
2 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Casi d’uso (1/2)
Interazione tra componenti software:
safety-critical (es. controllo automatico di motori)che forniscono servizi di infotainment (es. interfaccia utenteavanzata)
Interazione tra un sistema operativo real-time ed un sistemaoperativo general-purpose
3 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Casi d’uso (2/2)
Internet of things Vehicle-to-vehicle communication
Guida automatizzata Offloading in cloud storage
4 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Evidence Srl
Applicazioni: automotive, controllo automatico, domotica, ...
Prodotti: sistemi operativi real-time ed embedded,model-based design, device driver, ...
...
5 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Soluzione iniziale di Evidence Srl
A ciascun sistema operativo e assegnato staticamente un core
Minima interferenza temporale tra i sistemi operativi
Condivisione della memoria tra i sistemi operativi
Si puo implementare un protocollo di comunicazione efficiente
6 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Problemi della soluzione iniziale
Limitata protezione dell’integrita del sistema operativo real-time
Un malfunzionamento del sistema operativo general-purposepotrebbe sovrascrivere aree di memoria assegnate alsistema operativo safety-critical
Un malfunzionamento del sistema operativo real-timepotrebbe portare alla sovrascrittura di aree di memoriaassegnate al sistema operativo non-safety-critical
7 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Contributo della tesi
Nuovo design: usare un virtualizzatore per migliorare laprotezione dell’integrita del sistema operativo real-time
Piattaforma dual-core ARM
Software di virtualizzazione scelto: Xen
8 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Nuovo schema basato su Xen
Primi problemi:1 Condivisione della CPU → interferenza temporale?2 Implementazione di un protocollo efficiente di comunicazione
9 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Nuovo schema basato su Xen
Primi problemi:1 Condivisione della CPU → interferenza temporale?2 Implementazione di un protocollo efficiente di comunicazione
9 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Nuovo schema basato su Xen
Primi problemi:1 Condivisione della CPU → interferenza temporale?2 Implementazione di un protocollo efficiente di comunicazione
9 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Problema 1/2: possibile interferenza temporale?
L’interferenza temporale e minimizzata:
utilizzando una piattaforma dual-coreassegnando staticamente un core a ciascun sistema operativovirtualizzato
10 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Problema 2/2: Comunicazione efficiente
Xen consente accesso diretto alla memoria condivisa
implementando restrizioni sui permessi d’accesso
La sicronizzazione sull’accesso alla memoria avviene con unmeccanismo efficiente di notifiche inter-dominio
11 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Contributi in dettaglio
Per la realizzazione dell’infrastruttura descritta finora si sonosvolti i seguenti passi principali:
Porting di ERIKA come domU di Xen su piattaforma ARMImplementazione di un meccanismo di comunicazione efficientemediato da XenPorting su architettura ARM del supporto di Xen all’accessoda parte di domU a memoria di I/O
12 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Contributi su mainline Xen
16 commit inclusi in Xen 4.5Di cui i piu importanti sono:
Porting su ARM della funzionalita di assegnamento di memoriadi I/O ad un domUFix al sistema di gestione della memoria del dom0 su ARMFix al sistema di protezione dell’accesso alla memoria di I/ODisaccoppiamento della funzionalita di restrizione dell’accessoalla memoria di I/O da quella di assegnamento di memoria diI/O ad un domU
13 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Disseminazione dei risultati
Presentazione a CloudOpen Europe -Ottobre 2014, Dusseldorf(http://sched.co/1yGeyU6)
Articolo in fase di stesura per SIES 2015
Discussione informale della proposta alloXen Project Developer Summit -Agosto 2014, Chicago
14 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Problemi aperti (1/2)
ERIKA esegue come domU, Linux come dom0
Deve attendere il boot di Linux prima di poter eseguire
Idea: ERIKA puo eseguire come dom0
ERIKA e Linux eseguono a diverso livello di privilegioAncora possibile compromissione dell’integrita del domU
Nuova idea: ERIKA e Linux possono entrambi eseguire comedomini non privilegiati
dom0: unikernel con footprint minimo, certificabile
15 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Problemi aperti (2/2)
Xen non e certificato(non facilmente certificabile in ambito real-time o automotive)
Prima possibilita: certificare Xen
DornerWorks, Globallogic
Seconda possibilita: utilizzare un virtualizzatore certificato
es., Jailhouse
16 / 17