Le japonais eSOL, éditeur de logiciels temps réel embarqués désormais implanté en Europe (voir notre article ici), a profité de la manifestation virtuelle Embedded World 2021 pour montrer les évolutions de son logiciel eMCOS Hypervisor, ...un hyperviseur qui permet d'intégrer simultanément un OS temps réel (RTOS) et un système d'exploitation généraliste sur une même plate-forme matérielle avec une isolation spatiale et temporelle stricte, et ce au sein d'un système à criticité mixte. Désormais, eMCOS Hypervisor gère l'interface logicielle VirtIO, fondée sur des normes ouvertes, afin de partager des ressources physiques ou virtuelles pour, entre autres, réutiliser du code d'applications Linux.
Rappelons que VirtIO (pour Virtual Input-Output) est une interface de programmation minimaliste du noyau Linux destinée à la gestion des échanges de données avec des pilotes de périphériques de machines virtuelles et qui évite d’avoir à développer des pilotes spécifiques pour chaque version de Linux.
La prise en charge de VirtIO s’intègre ici dans la problématique très importante de réutilisation de codes existants. Dans ce cadre, la solution eMCOS Hypervisor d'eSOL est désormais en mesure de gérer les interfaces de périphériques VirtIO communs, afin que le système d'exploitation invité puisse accéder à des périphériques partagés. Il est alors possible de déployer une image Linux uniquement en éditant le “device-tree” de l’application (arborescence de périphériques) pour spécifier des périphériques physiques et virtuels.
« eMCOS Hypervisor permet de partager les dispositifs physiques en utilisant des “bridges” tournant sous forme d'applications temps réel Posix directement sur l'environnement natif de l'hyperviseur, sans avoir à recourir au contrôle d'un système d'exploitation invité, précise Rolland Dudemaine, vice-président Engineering d'eSOL Europe. Ces “bridges” peuvent fonctionner comme de simples routeurs définis par logiciel, mais sont également des emplacements parfaits pour mettre en œuvre des fonctionnalités spécifiques comme un chiffrement, une détection d'intrusion ou une limitation de débit. Si nécessaire, les périphériques physiques peuvent aussi être mis directement à disposition du système d'exploitation invité pour une meilleure réutilisation des pilotes de périphériques existants. »