XIII
MEDICAL 14 -
MAGGIO 2017
WEARABLE
SECURITY
di sicurezza, nessuno dei due produttori potrebbe avere
le competenze, o la possibilità, di correggere il software
presente sul dispositivo dopo che esso è stato spedito.
Il produttore del chip è troppo impegnato nella conse-
gna della successiva versione del chip e può addirittura
non avere allestito un processo per l’aggiornamento e la
correzione delle vecchie versioni del software che abbi-
na. E non è affatto detto che l’ambiente operativo stesso
includa un framework per l’aggiornamento dinamico,
quando necessario, di un singolo modulo software op-
pure dell’intero ambiente.
Un OS di tipo commerciale, dotato di funzionalità a sup-
porto dell’installazione di aggiornamenti ed upgrade
del software, per una tempestiva correzione di problemi
di sicurezza che dovessero presentarsi, si rivela dunque
un componente estremamente importante per la sicu-
rezza dei dispositivi medicali indossabili.
Isolamento delle sottosezioni del software
La progettazione dei dispositivi indossabili normalmente
si basa su SoC di tipo power-efficient. I core di questi si-
stemi contengono delle MPU (Memory Protection Unit)
che possono essere utilizzate per partizionare la memo-
ria in regioni separate, fornendo un efficace controllo
differenziato degli accessi. Utilizzando il corretto OS, le
capacità di partizionamento nel dominio dello spazio
offerte dalle MPU possono essere sfruttate per isolare il
software in sottosezioni separate (Fig. 3). Ciò non solo
aumenta l’affidabilità del sistema, consentendo di con-
tenere i malfunzionamenti di un singolo processo onde
evitare degradamenti dell’intero sistema, ma offre anche
un’opportunità per partizionarlo in sottosistemi che con-
sentono il caricamento e lo scaricamento separato dei di-
versi moduli software in occasione degli aggiornamenti.
Il supporto al partizionamento spaziale è una delle fun-
zionalità cardine dei sistemi operativi general-purpose
di fascia alta, come Linux. Tuttavia, l’overhead associato
alla virtualizzazione della memoria e la mancanza di un
comportamento deterministico hanno limitato l’utilizzo
di embedded Linux all’interno dei sistemi real-time. E,
naturalmente, la significativa footprint di Linux non ne
favorisce certo l’adozione come possibile OS all’interno
dei progetti basati su MCU (Micro Controller Unit). Un
sistema operativo leggero, dotato di un efficace process
model, può invece consentire il caricamento dinamico
del codice all’interno di dispositivi indossabili basati su
MCU e processi di tipo più avanzato.
Implementare concretamente la sicurezza
Se, da un lato, i produttori di hardware incorporano
sempre maggiori caratteristiche di sicurezza all’interno
dei nuovi SoC, dall’altro chi sviluppa il software deve sce-
gliere per i propri progetti un sistema operativo evoluto,
in grado di fornire il pieno supporto di tali funzionali-
tà. È importante che l’OS selezionato sia ampiamente
scalabile, per poter indirizzare i requisiti imposti da di-
spositivi caratterizzati da risorse limitate. Tale OS deve
inoltre includere un framework orientato alla sicurezza,
che consenta agli sviluppatori di migliorare la sicurezza
dei dispositivi. Il Real-Time Operating System (RTOS)
Nucleus di Mentor Graphics, dotato di un Process Mo-
del Framework, è un RTOS ampiamente diffuso, corren-
temente utilizzato per soddisfare i requisiti dei sistemi
embedded, ivi inclusi i requisiti relativi alla sicurezza.
Questo particolare OS offre agli sviluppatori vantaggi
significativi nell’implementazione della sicurezza all’in-
terno degli odierni dispositivi medicali indossabili.
Fig. 3
– Il Process Model di Nucleus costituisce un approccio di tipo leggero al partizionamento nel dominio dello spazio, che crea regioni protette all’interno
della memoria