Concilier innovation rapide et sécurité stricte dans les systèmes embarqués représente un défi majeur pour les développeurs. L’accélération des délais et les impératifs de certification poussent souvent à des décisions difficiles, compromettant parfois la sûreté de systèmes essentiels, comme le montre une nouvelle étude BlackBerry.

Les systèmes embarqués sont essentiels à bien des secteurs et sont omniprésents dans notre quotidien. Autonomes, souvent temps-réel, ils sont au cœur des voitures (gérant l’ABS, les systèmes multimédias, les réglages moteurs, etc.), des avions (navigation, contrôles des systèmes de vol, etc.), de la santé, du retail mais aussi de plus en plus de notre électroménager et de l’IoT.

Ces systèmes tiennent une place un peu à part dans l’univers IT. D’abord parce qu’ils sont animés par des systèmes parfois très spécifiques afin de procurer une fiabilité et une sécurité de fonctionnement irréprochable. Ensuite parce qu’ils sont souvent soumis à des contraintes strictes de puissance, de mémoire et de consommation énergétique qui pèsent sur le développement et demandent une attention particulière. Enfin, ils sont souvent temps réel, ce qui impose là aussi des pratiques de développement et des compétences particulières.

Ces spécificités font que les systèmes embarqués nécessitent une approche différente de celle des systèmes informatiques traditionnels, tant au niveau de la conception que du développement. On comprend, dès lors, que les développeurs de ces systèmes font face à des défis un peu différents des traditionnels développeurs en entreprise.

Toutefois, il existe fort peu d’études dédiées à cet univers de l’embarqué. C’est pourquoi une étude BlackBerry, publiée cette semaine, a retenu notre attention. On connaît davantage l’éditeur pour ses solutions de cybersécurité mais avant même sa transformation post-smartphones, BlackBerry avait mis un pied important dans ce domaine en faisant l’acquisition de QNX et son système temps réel pour le monde de l’embarqué. Bien évidemment, comme toutes ces études sponsorisées par un fournisseur, le questionnaire tend à servir les dessins et la vision de ce dernier.

Néanmoins cette étude est aussi l’une des rares à s’interroger sur comment le monde de l’embarqué tente de concilier l’innovation rapide exigée par le marché avec les impératifs de sécurité et de fiabilité des systèmes embarqués, éclairant au passage les défis croissants de leurs développeurs et les tensions qui animent les équipes et peuvent avoir des conséquences potentiellement alarmantes.

L’étude, menée auprès de 1000 spécialistes dont 150 en France, révèle une réalité préoccupante : 73% des développeurs français admettent que l’urgence des délais peut les conduire à faire des compromis sur la sûreté fonctionnelle des systèmes embarqués. Cette statistique souligne la tension palpable entre l’accélération de l’innovation et le maintien de systèmes certifiés et robustes.

Pressions et Frustrations

Après le DevOps et sa notion de Shift Left qui fait reposer des responsabilités de sécurité et de déploiement sur les épaules des développeurs, l’univers IT découvre que l’on a peut-être soumis les « Devs » à des surcharges cognitives. Et les développeurs de l’univers embarqué n’échappent pas à ces pressions. À celles-ci, s’en ajoutent une autre bien connue : celle du « go-to-market » et d’innover toujours plus rapidement. On peut dès lors s’inquiéter de voir 73 % des développeurs français admettre que la pression des délais peut les contraindre à faire des compromis sur la sûreté fonctionnelle des systèmes embarqués. Et c’est une très mauvaise nouvelle. Plus que tout autre système, l’embarqué est souvent au cœur de système dont les dysfonctionnements (internes ou provoqués par des cybercriminels) peuvent avoir des conséquences dramatiques.

Et quand les choses ne tournent pas comme elles le devraient, des changements s’imposent. Ainsi, face aux défis liés à la sécurité, au coût et aux certifications de sûreté, 77 % des développeurs seraient prêts à changer le système d’exploitation de leurs systèmes embarqués.
Notamment, 35 % des développeurs reconnaissent que leur système d’exploitation actuel ne répond pas aux exigences de certification de sécurité, ce qui entraîne des retards coûteux dans les projets (avec un impact financier moyen estimé à 520 000€ par entreprise). En effet, parmi les entreprises françaises tenues de suivre des normes de sécurité internationales, 63 % d’entre elles déclarent qu’il est « très » voire « extrêmement » difficile de les respecter avec leur système d’exploitation actuel.

En revanche ils ne sont que 27% à pointer un manque de performance comme motivation à basculer vers un autre OS embarqué. Pourtant, 60% des développeurs affirment avoir rencontré des problèmes significatifs de performance ou de pannes liés au système utilisé (même si ces problèmes restent occasionnels ou rares pour 80% des répondants).

Open Source ou pas ?

L’étude met en lumière un débat au sein de la communauté des développeurs de l’embarqué : 40% préfèrent les systèmes d’exploitation open source pour leur accessibilité, tandis que 39% optent pour des solutions propriétaires, souvent mieux certifiées en termes de sécurité.

Au-delà de ce débat, l’étude s’attache à comprendre quels sont les critères qui motivent le choix de tel ou tel système d’exploitation pour systèmes embarqués. Sans surprise, la sécurité, les coûts et les certifications arrivent largement en tête devant la tolérance aux pannes, la facilité d’intégration, le support et l’expérience de développement.

On notera quand même que les différences de perception autour de la fiabilité sont assez peu marquées entre les amateurs de l’open source et ceux des systèmes propriétaires.

L’impact des failles de sécurité

Par nature, un système embarqué ne se patche pas aussi facilement qu’un système PC ou smartphones. La connectivité n’est pas toujours au rendez-vous, l’administration centralisée n’est pas aussi développée, les interruptions ne sont guère autorisées et le processus de patch est toujours plus délicat.

Dès lors, une faille connue sur un système embarqué est loin d’être aisée à combler et peut avoir des répercussions dramatiques. La sécurité du système est donc un point névralgique : 75% des professionnels français ayant fait face à une faille de sécurité ont subi des retards dans leurs projets.

Et 60% des développeurs estiment que les vulnérabilités des systèmes embarqués ont un impact (réel ou majeur) sur leurs projets.

Bien que 74 % des entreprises considèrent la sécurité comme une priorité dans leurs logiciels et applications, l’intervalle entre les mises à jour de sécurité (des patches de sécurité) varie considérablement, avec une moyenne de 5 semaines entre chaque correctif.

On regrettera que l’étude reste très évasive sur les différents systèmes d’exploitation utilisés (. Certes, BlackBerry a sponsorisé l’étude pour mettre en avant les qualités de son propre système embarqué QNX. « Pour prospérer dans un monde axé sur les logiciels, les développeurs ont besoin d’un système d’exploitation qui donne la priorité à la sûreté et à la sécurité » explique ainsi John Wall, SVP et responsable de BlackBerry QNX. Avant d’affirmer que « les solutions pré-certifiées et sécurisées dès leur conception permettent aux équipes de se concentrer sur l’innovation plutôt que sur la maintenance. Le choix du bon système d’exploitation peut transformer les entreprises de manière significative, en minimisant les problèmes et en améliorant l’efficacité. »

On aura bien compris que justement QNX fait partie de ces systèmes d’exploitation sûrs et certifiés qui permettent d’éviter les retards et les coûts supplémentaires tout en soulageant la pression cognitive sur les développeurs…


Principaux systèmes d’exploitation pour l’embarqué

Systèmes d’exploitation propriétaires

QNX : Développé par BlackBerry, très utilisé dans les systèmes automobiles et les équipements industriels et spaciaux.
VxWorks : Développé par Wind River, utilisé dans des applications critiques comme l’aéronautique et les équipements médicaux.
Integrity RTOS : Développé par Green Hills Software, principalement utilisé dans les systèmes de défense et les applications critiques
Windows 11 for IoT : Longtemps Microsoft a disposé de différentes déclinaisons embarquées comme Windows CE, Windows Embedded et Windows 10 IoT Core. Désormais la gamme se limite à Windows for IoT Enterprise.

Systèmes d’exploitation open source

FreeRTOS : Un système d’exploitation temps réel léger, très populaire, utilisé dans les applications IoT et les systèmes embarqués simples.
Eclipse ThreadX : Développé à l’origine par Express Logic, puis racheté par Microsoft (qui l’a renommé Azure RTOS), avant d’être basculé en open source sous licence MIT et confié à la fondation Eclipse qui l’a renommé Eclipse ThreadX, est utilisé dans les appareils IoT et les systèmes médicaux.
Embedded Linux : Une version de Linux adaptée aux systèmes embarqués, largement utilisée dans diverses applications et essentiellement supporté par Canonical (Ubuntu).
eCos : Initialement développé par Cygnus Solutions, il a été repris par Red Hat avant d’être transféré à la Free Software Foundation
Zephyr : Un RTOS (Real-Time Operating System) open source soutenu par la Linux Foundation, utilisé dans les applications IoT.
Contiki-NG : Le système d’exploitation open source Contiky OS principalement adapté aux réseaux de capteurs et aux systèmes IoT est en train de se réinventer sous le nom Contiki-NG.


À lire également :

BlackBerry abandonne l’idée d’un split et d’une IPO de l’IoT

Quand les logiciels embarqués redéfinissent la logique d’innovation produit…

Canonical lance Ubuntu Frame pour les développements sur écrans embarqués et déportés

Les nouveaux outils pour « Linux embarqué »

Microsoft lance la v2.0 du Fluid Framework en open source

Raspberry Pi réussit son IPO et enflamme la Bourse londonienne