Embedded_53 - page 61

EMBEDDED
53 • SETTEMBRE • 2014
61
SOFTWARE
IoT
ader e del kernel del sistema
operativo. Nonostante ciò, è
praticamente impossibile svi-
luppare una strategia firmwa-
re di qualità senza prendere
le corrette decisioni della
scelta dell’hardware. Inoltre,
nell’IoT, spesso l’esecuzione
delle applicazioni è effettuata
da accesso remoto piuttosto
che in locale. L’infrastruttura
per la messaggistica Web – la
lingua franca dell’IoT – deve
quindi essere considerata
parte integrante della stra-
tegia firmware. Per quanto
riguarda le applicazioni sof-
tware, queste rimangono
al di sopra dello strato del
firmware, a prescindere che
facciano uso di API locali o
API web.
Obiettivi strategici
• Una strategia firmware
IoT dovrebbe includere i seguenti cinque obiettivi:
• facilità di utilizzo/apprendimento;
• utilizzo di standard, quanto più possibile;
• sicurezza;
• efficienza;
• scalabilità.
Va quindi data la preferenza a prodotti, protocolli e archi-
tetture che gli sviluppatori meno esperti troveranno facili
da imparare e da utilizzare. Il firmware è l’ambiente in cui
le principali risorse del cliente – gli sviluppatori – passano
la loro giornata. Non vanno quindi sottovalutati i vantaggi a
lungo termine di un’ottimizzazione quotidiana dello sviluppo,
collaudo e manutenzione del firmware. L’impiego di protocolli
e architetture conformi a standard aperti di mercato fornirà
molti vantaggi, dalla disponibilità di una gamma più vasta di
prodotti a disposizione a un gruppo più ampio di sviluppatori
esperti. L’IoT comporta sfide impegnative per quanto riguarda
la sicurezza e la privacy, e gli sviluppatori che non tengono
conto della sicurezza già a partire dalle prime fasi di proget-
tazione rischiano di vedere clamorosamente fallire il proprio
progetto e, di conseguenza, di compromettere il successo
della propria azienda. L’efficienza a run-time è poi un fattore
critico per i dispositivi IoT, dal momento che sono spesso
alimentati a batteria e dispongono di risorse limitate. La scala-
bilità è inoltre un fattore che spesso viene sottovalutato; infatti
i progettisti di dispositivi IoT devono prevedere l’integrazione
del firmware selezionato a bordo dei diversi dispositivi e delle
future generazioni degli stessi, al fine di salvaguardare gli
investimenti futuri dell’azienda. Ora saranno esaminati più a
fondo questi aspetti e la loro applicazione allo stack firmware.
Hardware
Esiste una grande varietà di architetture di microprocessori
tra cui è possibile scegliere per un progetto IoT. Andranno
preferite quelle che offrono un ampio insieme di strumenti di
sviluppo. Bisognerà anche cercare un’architettura di elabora-
zione che sia scalabile per la propria serie di prodotti e le loro
successive generazioni. Ad esempio, ARM offre dispositivi
che vanno da MCU di bassissima potenza a combinazioni di
ARM/FPGA, fino ai processori per server cloud a 64 bit.
Parte della strategia di sicurezza dovrebbe includere una
root of trust di livello hardware (HW RoT) in grado di
fornire un’inizializzazione sicura del dispositivo, una memo-
rizzazione protetta delle chiavi e un generatore hardware
di numeri casuali (RNG). Queste funzionalità forniscono
la garanzia che un dispositivo IoT non possa essere ripro-
grammato con un firmware dannoso, una memorizzazione
delle chiavi sicura (cioè inattaccabile) per una migliore pro-
tezione dei dati e una crittografia di elevata qualità. Funzioni
HW RoT potrebbero essere già disponibili all’interno del
microprocessore principale o invece essere fornite tramite
un componente ausiliario, ad esempio un microcontrollore
per smart card o un modulo SIM.
Fig. 2 – Architettura di un hypervisor a microkernel per IoT
1...,51,52,53,54,55,56,57,58,59,60 62,63,64,65,66,67,68,69,70,71,...86
Powered by FlippingBook