<div class='slidealt'>Expérimentez des extensions de <a title='virtualisation pour plateformes hétérogènes à base de processeurs ARM' href='/fr/produits/'>virtualisation KVM</a></div> <div class='slidealt'>Faites appelle à des <a title='services de full virtualisation pour kvm sur coeur ARM' href='/fr/services/'>services de virtualisation sur mesure</a></div> <div class='slidealt'>Virtualisation KVM des E/S's pour coeurs ARMv7, ARMv8 <a title='extensions de virtualisation de plateforme VFIO des E/S par kvm sur arm en logiciel libre' href='/fr/solutions/guides/vfio-sur-arm/'>par extensions VFIO/IOMMU</a></div> <div class='slidealt'>Projets de recherche de virtualisation <a title='kvm en logiciel libre pour ARM multicoeur' href='/fr/innovation/'>pour les systèmes embarqués et le cloud</a></div> <div class='slidealt'>Solutions de virtualisation pour systèmes <a title='solutions en logiciels libres de virtualisation pour ARMv7-ARMv8' href='/fr/solutions/'>hétérogènes multicoeur ARM</a></div>

VOSySmonitor - Outil de Génération de Couches de Services pour Systèmes d'Exploitation Sécurisés

VOSySmonitor - Secure Operating System Service Layer Generation Framework

Virtual Open Systems propose VOSySmonitor, une solution logicielle puissante, qui fonctionne dans le mode Secure Monitor des processeurs ARM afin de permettre l'exécution simultanée de systèmes avec différents niveaux de criticité sur une même plate-forme. VOSySmonitor fournit une isolation spatiale et temporelle complète entre chaque domaine en utilisant l'extension de sécurité matérielle appelée ARM TrustZone. Le principe de TrustZone est de partitionner les ressources système (câblé ou configurable) en zones sécurisées et non sécurisées, dont l'isolation est assurée par la surveillance des accès physiques à la mémoire ou aux périphériques. Par conséquent, un système, fonctionnant dans le monde sécurisé, est totalement isolé des applications s'exécutant dans le monde non sécurisé.

VOSySmonitor gère le changement de contexte entre les deux mondes sur l'exécution de l'instruction "Secure Monitor Call" (SMC) ou par des mécanismes d'exception matériels, tels que des interruptions (FIQ, IRQ, défaillance externe) afin de garantir un fonctionnement correct pour chaque monde. Enfin, VOSySmonitor est certifié ISO 26262 ASIL C, ce qui en fait la solution parfaite pour la prochaine génération de eCockpit pour l'Automobile, où l'information véhicule, l'infodivertissement, la navigation, la caméra/vidéo et la connectivité des appareils sont combinés sur plusieurs écrans.

L'architecture de VOSySmonitor est conçue pour faciliter le support de nouvelles plates-formes matérielles, ainsi que l'intégration des systèmes d'exploitation dans chaque monde (sécurisé et non sécurisé). En fonction des exigences matérielles, VOSySmonitor peut réutiliser des composants logiciels, tels que les pilotes de périphériques communs, afin de minimiser les efforts d'intégration. De plus, les systèmes consolidés dans les mondes peuvent interagir avec VOSySmonitor (par exemple pour demander des services spécifiques) via une couche de service (appelée "Secure Operating System Service Layer (SOSSL)").

Cette interface de communication est standardisée mais peut être étendue pour des cas d'utilisation plus complexes. Par conséquent, il est possible pour l'utilisateur de configurer cette couche de service afin de développer des interactions personnalisées entre les mondes (gestionnaire d'interruptions, services sécurisés, changement de contexte, etc.). Pour faciliter ce processus de personnalisation, VOSySmonitor fournit un outil intuitif (basé sur des fichiers de configuration Python et YAML), qui permet la génération automatique du SOSSL en fonction de paramètres d'entrée spécifiques.

VOSySmonitor - Secure Operating System Service Layer Generation Framework

VOSySmonitor - Vue d'ensemble de l'outil de génération du SOSSL

Aperçu de la structure de l'outil de génération du SOSSL

L'outil de génération du SOSSL est composé de plusieurs composants clés qui interagissent entre eux afin de configurer et compiler VOSySmonitor. Dans un premier temps, l'utilisateur peut définir certains paramètres pour personnaliser le SOSSL de VOSySmonitor en utilisant un fichier de configuration YAML. Ensuite, le fichier de configuration ainsi qu'un modèle sont introduits dans une application Python pour générer le fichier C du SOSSL correspondant. Une fois le fichier SOSSL généré, l'utilisateur peut mettre à jour/ajouter certaines fonctionnalités en modifiant directement le fichier C du SOSSL. Finalement, le fichier C est compilé et lié aux autres librairies de VOSySmonitor afin de générer le binaire final pour la plate-forme cible.

Les paramètres de configuration de l'outil de génération du SOSSL sont divisés en trois points principaux :

  • Les paramètres de la catégorie "Features" permettent à l'utilisateur d'activer/désactiver ou de personnaliser certaines fonctionnalités avancées de VOSySmonitor. Par exemple, il est possible d'activer/désactiver VOSySVirtualNet (un canal de communication inter-monde sécurisé et performant intégré dans VOSySmonitor) ainsi que de configurer ses fonctions de sécurité telles que le limiteur de débit ; modifier le comportement de la préservation du FPU sur les changements de contexte; activer/désactiver les tests de diagnostics, etc.
  • Les paramètres de la catégorie "Operating Systems" permettent à l'utilisateur de modifier les configurations des systèmes d'exploitation qui sont consolidés sur VOSySmonitor. Par exemple, les paramètres tels que le point d'entrée du système, le niveau de privilège du processeur (hyperviseur-EL2, kernel-EL1, etc.), Endianness, capacité de migration, etc., permettent à l'utilisateur d'ajuster exactement le comportement d'une OS donnée selon les besoins de l'utilisateur.
  • Les paramètres de la catégorie "SMC Services" permettent à l'utilisateur de définir de nouveaux services SMC personnalisés dans le fichier C du SOSSL de VOSySmonitor. De tels services personnalisés peuvent être définis très précisément en fonction des besoins de l'utilisateur. Par exemple, il est possible de définir si le service donné peut être appelé à partir du monde sécurisé ou non sécurisé (ou les deux), combien d'arguments le service SMC doit retourner, avec quel SMC ID le service peut être appelé, etc. L 'outil de génération du SOSSL crée alors un squelette de code pour le service spécifié qui est accessible par l'utilisateur afin de directement implémenter le service dans le fichier C généré.

VOSySmonitor, Fonctionnalités de l'outil de génération du SOSSL

Les principales caractéristiques de l'outil de génération du SOSSL sont :

  • Facilement compréhensible basé sur YAML et Python3/Jinja2
  • Les systèmes d'exploitation consolidés sont entièrement personnalisables (point d'entrée, 32 ou 64 bits, endianess, etc.).
  • Affectation des ressources CPU entièrement configurable pour les différents systèmes d'exploitation
  • Définition de nouveaux services SMC
  • Activation des fonctionnalités de VOSySmonitor (profilage des performances, surveillance de l'état du système, etc.)
  • Facilement extensible

Virtual Open Systems Contact

Pour toutes questions à propos de VOSySmonitor ou nos services personnalisés, n'hésitez pas à contact us.