SlideShare a Scribd company logo
Integrating Linux and the real-time ERIKA OS
through the Xen hypervisor
Arianna Avanzini
29 Ottobre 2014
Relatrice Correlatore
Prof.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’esecuzione
parallela di un sistema operativo real-time ed un sistema
operativo general-purpose su un’unica board
Mediante una soluzione che apre la strada alla protezione
dell’integrit`a 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 utente
avanzata)
Interazione tra un sistema operativo real-time ed un sistema
operativo 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 pu`o 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’integrit`a del sistema operativo real-time
Un malfunzionamento del sistema operativo general-purpose
potrebbe sovrascrivere aree di memoria assegnate al
sistema operativo safety-critical
Un malfunzionamento del sistema operativo real-time
potrebbe portare alla sovrascrittura di aree di memoria
assegnate 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 la
protezione dell’integrit`a 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-core
assegnando staticamente un core a ciascun sistema operativo
virtualizzato
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 un
meccanismo 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 sono
svolti i seguenti passi principali:
Porting di ERIKA come domU di Xen su piattaforma ARM
Implementazione di un meccanismo di comunicazione efficiente
mediato da Xen
Porting su architettura ARM del supporto di Xen all’accesso
da 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.5
Di cui i pi`u importanti sono:
Porting su ARM della funzionalit`a di assegnamento di memoria
di I/O ad un domU
Fix al sistema di gestione della memoria del dom0 su ARM
Fix al sistema di protezione dell’accesso alla memoria di I/O
Disaccoppiamento della funzionalit`a di restrizione dell’accesso
alla memoria di I/O da quella di assegnamento di memoria di
I/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 allo
Xen 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 pu`o eseguire come dom0
ERIKA e Linux eseguono a diverso livello di privilegio
Ancora possibile compromissione dell’integrit`a del domU
Nuova idea: ERIKA e Linux possono entrambi eseguire come
domini 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 possibilit`a: certificare Xen
DornerWorks, Globallogic
Seconda possibilit`a: utilizzare un virtualizzatore certificato
es., Jailhouse
16 / 17
Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri
Grazie dell’attenzione
17 / 17

More Related Content

Viewers also liked

Linux Board. Corso di prototipazione rapida
Linux Board. Corso di prototipazione rapidaLinux Board. Corso di prototipazione rapida
Linux Board. Corso di prototipazione rapida
Multiverso
 
Intervento Prof. Colajanni Giornata del Perito 2015
Intervento Prof. Colajanni Giornata del Perito 2015Intervento Prof. Colajanni Giornata del Perito 2015
Intervento Prof. Colajanni Giornata del Perito 2015
LegolasTheElf
 
Robot operating systems (ros) overview & (1)
Robot operating systems (ros) overview & (1)Robot operating systems (ros) overview & (1)
Robot operating systems (ros) overview & (1)
Piyush Chand
 
ROS distributed architecture
ROS  distributed architectureROS  distributed architecture
ROS distributed architecture
Pablo Iñigo Blasco
 
Raspberry Pi + ROS
Raspberry Pi + ROSRaspberry Pi + ROS
Raspberry Pi + ROS
ArnoldBail
 
Introduction to ROS (Robot Operating System)
Introduction to ROS (Robot Operating System) Introduction to ROS (Robot Operating System)
Introduction to ROS (Robot Operating System)
hvcoup
 

Viewers also liked (6)

Linux Board. Corso di prototipazione rapida
Linux Board. Corso di prototipazione rapidaLinux Board. Corso di prototipazione rapida
Linux Board. Corso di prototipazione rapida
 
Intervento Prof. Colajanni Giornata del Perito 2015
Intervento Prof. Colajanni Giornata del Perito 2015Intervento Prof. Colajanni Giornata del Perito 2015
Intervento Prof. Colajanni Giornata del Perito 2015
 
Robot operating systems (ros) overview & (1)
Robot operating systems (ros) overview & (1)Robot operating systems (ros) overview & (1)
Robot operating systems (ros) overview & (1)
 
ROS distributed architecture
ROS  distributed architectureROS  distributed architecture
ROS distributed architecture
 
Raspberry Pi + ROS
Raspberry Pi + ROSRaspberry Pi + ROS
Raspberry Pi + ROS
 
Introduction to ROS (Robot Operating System)
Introduction to ROS (Robot Operating System) Introduction to ROS (Robot Operating System)
Introduction to ROS (Robot Operating System)
 

Similar to Integrating Linux and the real-time ERIKA OS through the Xen hypervisor

Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In Azienda
Better Software
 
FFmpeg - lo strumento multimediale universale
FFmpeg - lo strumento multimediale universaleFFmpeg - lo strumento multimediale universale
FFmpeg - lo strumento multimediale universale
Stefano Sabatini
 
Open Source con uno sguardo enterprise - CNA barcamp 2012
Open Source con uno sguardo enterprise - CNA barcamp 2012Open Source con uno sguardo enterprise - CNA barcamp 2012
Open Source con uno sguardo enterprise - CNA barcamp 2012
David Denicolò
 
Open Source con uno sguardo enterprise
Open Source con uno sguardo enterpriseOpen Source con uno sguardo enterprise
Open Source con uno sguardo enterprise
CNA RAvenna
 
Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...
Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...
Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...
Rachele Muscarà
 
La scelta di Plone per la comunicazione istituzionale dell'INAF
La scelta di Plone per la comunicazione istituzionale dell'INAFLa scelta di Plone per la comunicazione istituzionale dell'INAF
La scelta di Plone per la comunicazione istituzionale dell'INAF
Plone for Research and University
 
MS windows server 2008 - Designing a windows server 2008 network infrastructu...
MS windows server 2008 - Designing a windows server 2008 network infrastructu...MS windows server 2008 - Designing a windows server 2008 network infrastructu...
MS windows server 2008 - Designing a windows server 2008 network infrastructu...
LEN Learning Education Network
 
From Virtualization to smart cloud computing, 2015, distributed systems
From Virtualization to smart cloud computing, 2015, distributed systemsFrom Virtualization to smart cloud computing, 2015, distributed systems
From Virtualization to smart cloud computing, 2015, distributed systems
Paolo Nesi
 
10 Linuxday2002
10 Linuxday200210 Linuxday2002
10 Linuxday2002
Marco Guardigli
 
Meego Italian Day 2011 - Francesco Baldassarri (1)
Meego Italian Day 2011 - Francesco Baldassarri (1)Meego Italian Day 2011 - Francesco Baldassarri (1)
Meego Italian Day 2011 - Francesco Baldassarri (1)
Francesco Baldassarri
 
Sistemi Context-aware: Esercitazione 3
Sistemi Context-aware: Esercitazione 3Sistemi Context-aware: Esercitazione 3
Sistemi Context-aware: Esercitazione 3
Marco Loregian
 
Framework di supporto allo sviluppo di applicazioni Web
Framework di supporto allo sviluppo di applicazioni WebFramework di supporto allo sviluppo di applicazioni Web
Framework di supporto allo sviluppo di applicazioni Web
Davide Bellettini
 
S354 php-5.x-e-my sql-5.x
S354 php-5.x-e-my sql-5.xS354 php-5.x-e-my sql-5.x
S354 php-5.x-e-my sql-5.x
LEN Learning Education Network
 
Lezione 6: Il Web come piattaforma
Lezione 6: Il Web come piattaformaLezione 6: Il Web come piattaforma
Lezione 6: Il Web come piattaforma
Roberto Polillo
 
Progetti per l'esame negli ITIS
Progetti per l'esame negli ITISProgetti per l'esame negli ITIS
Progetti per l'esame negli ITIS
Galliate Linux User Group
 
10 ottime ragioni per usare svn in azienda
10 ottime ragioni per usare svn in azienda10 ottime ragioni per usare svn in azienda
10 ottime ragioni per usare svn in azienda
Andrea Colleoni
 
Funzionalità e portabilità dei sistemi operativi per piattaforme mobili
Funzionalità e portabilità dei sistemi operativi per piattaforme mobiliFunzionalità e portabilità dei sistemi operativi per piattaforme mobili
Funzionalità e portabilità dei sistemi operativi per piattaforme mobili
Nicola Losito
 

Similar to Integrating Linux and the real-time ERIKA OS through the Xen hypervisor (20)

Elio Tondo - Linux In Azienda
Elio Tondo - Linux In AziendaElio Tondo - Linux In Azienda
Elio Tondo - Linux In Azienda
 
FFmpeg - lo strumento multimediale universale
FFmpeg - lo strumento multimediale universaleFFmpeg - lo strumento multimediale universale
FFmpeg - lo strumento multimediale universale
 
Open Source con uno sguardo enterprise - CNA barcamp 2012
Open Source con uno sguardo enterprise - CNA barcamp 2012Open Source con uno sguardo enterprise - CNA barcamp 2012
Open Source con uno sguardo enterprise - CNA barcamp 2012
 
Open Source con uno sguardo enterprise
Open Source con uno sguardo enterpriseOpen Source con uno sguardo enterprise
Open Source con uno sguardo enterprise
 
Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...
Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...
Esperienze di migrazione all'Open Source: l'Ente di Gestione del Parco delle ...
 
Open Source at Istat
Open Source at IstatOpen Source at Istat
Open Source at Istat
 
3rd 3DDRESD: BSS
3rd 3DDRESD: BSS3rd 3DDRESD: BSS
3rd 3DDRESD: BSS
 
La scelta di Plone per la comunicazione istituzionale dell'INAF
La scelta di Plone per la comunicazione istituzionale dell'INAFLa scelta di Plone per la comunicazione istituzionale dell'INAF
La scelta di Plone per la comunicazione istituzionale dell'INAF
 
MS windows server 2008 - Designing a windows server 2008 network infrastructu...
MS windows server 2008 - Designing a windows server 2008 network infrastructu...MS windows server 2008 - Designing a windows server 2008 network infrastructu...
MS windows server 2008 - Designing a windows server 2008 network infrastructu...
 
From Virtualization to smart cloud computing, 2015, distributed systems
From Virtualization to smart cloud computing, 2015, distributed systemsFrom Virtualization to smart cloud computing, 2015, distributed systems
From Virtualization to smart cloud computing, 2015, distributed systems
 
10 Linuxday2002
10 Linuxday200210 Linuxday2002
10 Linuxday2002
 
Meego Italian Day 2011 - Francesco Baldassarri (1)
Meego Italian Day 2011 - Francesco Baldassarri (1)Meego Italian Day 2011 - Francesco Baldassarri (1)
Meego Italian Day 2011 - Francesco Baldassarri (1)
 
Sistemi Context-aware: Esercitazione 3
Sistemi Context-aware: Esercitazione 3Sistemi Context-aware: Esercitazione 3
Sistemi Context-aware: Esercitazione 3
 
Framework di supporto allo sviluppo di applicazioni Web
Framework di supporto allo sviluppo di applicazioni WebFramework di supporto allo sviluppo di applicazioni Web
Framework di supporto allo sviluppo di applicazioni Web
 
S354 php-5.x-e-my sql-5.x
S354 php-5.x-e-my sql-5.xS354 php-5.x-e-my sql-5.x
S354 php-5.x-e-my sql-5.x
 
Lezione 6: Il Web come piattaforma
Lezione 6: Il Web come piattaformaLezione 6: Il Web come piattaforma
Lezione 6: Il Web come piattaforma
 
Progetti per l'esame negli ITIS
Progetti per l'esame negli ITISProgetti per l'esame negli ITIS
Progetti per l'esame negli ITIS
 
10 ottime ragioni per usare svn in azienda
10 ottime ragioni per usare svn in azienda10 ottime ragioni per usare svn in azienda
10 ottime ragioni per usare svn in azienda
 
Slides marcosabatini
Slides marcosabatiniSlides marcosabatini
Slides marcosabatini
 
Funzionalità e portabilità dei sistemi operativi per piattaforme mobili
Funzionalità e portabilità dei sistemi operativi per piattaforme mobiliFunzionalità e portabilità dei sistemi operativi per piattaforme mobili
Funzionalità e portabilità dei sistemi operativi per piattaforme mobili
 

Integrating Linux and the real-time ERIKA OS through the Xen hypervisor

  • 1. Integrating Linux and the real-time ERIKA OS through the Xen hypervisor Arianna Avanzini 29 Ottobre 2014 Relatrice Correlatore Prof.ssa Letizia Leonardi Prof. Paolo Valente
  • 2. Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri Contributo della tesi Realizzazione di un’infrastruttura che consente l’esecuzione parallela di un sistema operativo real-time ed un sistema operativo general-purpose su un’unica board Mediante una soluzione che apre la strada alla protezione dell’integrit`a dei sistemi operativi Non fornita in soluzioni pre-esistenti 2 / 17
  • 3. 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 utente avanzata) Interazione tra un sistema operativo real-time ed un sistema operativo general-purpose 3 / 17
  • 4. 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
  • 5. 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
  • 6. 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 pu`o implementare un protocollo di comunicazione efficiente 6 / 17
  • 7. Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri Problemi della soluzione iniziale Limitata protezione dell’integrit`a del sistema operativo real-time Un malfunzionamento del sistema operativo general-purpose potrebbe sovrascrivere aree di memoria assegnate al sistema operativo safety-critical Un malfunzionamento del sistema operativo real-time potrebbe portare alla sovrascrittura di aree di memoria assegnate al sistema operativo non-safety-critical 7 / 17
  • 8. Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri Contributo della tesi Nuovo design: usare un virtualizzatore per migliorare la protezione dell’integrit`a del sistema operativo real-time Piattaforma dual-core ARM Software di virtualizzazione scelto: Xen 8 / 17
  • 9. 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
  • 10. 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
  • 11. 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
  • 12. 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-core assegnando staticamente un core a ciascun sistema operativo virtualizzato 10 / 17
  • 13. 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 un meccanismo efficiente di notifiche inter-dominio 11 / 17
  • 14. Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri Contributi in dettaglio Per la realizzazione dell’infrastruttura descritta finora si sono svolti i seguenti passi principali: Porting di ERIKA come domU di Xen su piattaforma ARM Implementazione di un meccanismo di comunicazione efficiente mediato da Xen Porting su architettura ARM del supporto di Xen all’accesso da parte di domU a memoria di I/O 12 / 17
  • 15. Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri Contributi su mainline Xen 16 commit inclusi in Xen 4.5 Di cui i pi`u importanti sono: Porting su ARM della funzionalit`a di assegnamento di memoria di I/O ad un domU Fix al sistema di gestione della memoria del dom0 su ARM Fix al sistema di protezione dell’accesso alla memoria di I/O Disaccoppiamento della funzionalit`a di restrizione dell’accesso alla memoria di I/O da quella di assegnamento di memoria di I/O ad un domU 13 / 17
  • 16. 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 allo Xen Project Developer Summit - Agosto 2014, Chicago 14 / 17
  • 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 pu`o eseguire come dom0 ERIKA e Linux eseguono a diverso livello di privilegio Ancora possibile compromissione dell’integrit`a del domU Nuova idea: ERIKA e Linux possono entrambi eseguire come domini non privilegiati dom0: unikernel con footprint minimo, certificabile 15 / 17
  • 18. 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 possibilit`a: certificare Xen DornerWorks, Globallogic Seconda possibilit`a: utilizzare un virtualizzatore certificato es., Jailhouse 16 / 17
  • 19. Premesse Motivazioni Contributo della tesi Contributi pratici della tesi Sviluppi futuri Grazie dell’attenzione 17 / 17