L’environnement d’exécution virtuel pour objets connectés de MicroEJ s’adapte au temps réel

Fort de plusieurs projets spécifiques développés dans le cadre de l’industrie 4.0, l’éditeur nantais MicroEJ, spécialiste des plates-formes logicielles sécurisées pour objets connectés et équipements embarqués, propose désormais une extension temps réel de son environnement d’exécution virtuel VEE ...(Virtual Execution Environment), apte à répondre aux contraintes de dispositifs électroniques tels que les pompes, valves et autres capteurs et actionneurs connectés critiques.

L’environnement MicroEJ VEE, fourni au sein du SDK MicroEJ, est une solution logicielle IoT échelonnable calibrée pour les équipements aux ressources limitées bâtis sur des microcontrôleurs ou microprocesseurs 32 bits (typiquement du Cortex-M0 avec 128 Ko de flash et 32 Ko de RAM jusqu’au Cortex-A9). Apte à exécuter des applications Java et C/C++ multiples et mixtes, il fournit un jeu de services dont un framework applicatif, un sous-système de gestion d’entrées/sorties analogiques et numériques, un bloc de gestion des capteurs, une pile USB, un système de gestion de fichiers, une pile de connectivité avec sécurité (SSL/TLS, HTTPS, Rest…), un framework pour interface utilisateur 2D tactile, etc.

    

Sur des processeurs simples tels que les microcontrôleurs cadencés à une fréquence de 100 MHz typiquement utilisés dans les systèmes embarqués, une tâche critique à haute priorité exécutée au sein d’un espace d’exécution virtuel doit pouvoir prendre l’avantage sur d’autres tâches moins prioritaires en moins de 25 µs. Selon l’éditeur, la nouvelle capacité d’exécution temps réel de MicroEJ VEE, associée aux mécanismes de virtualisation de cet environnement (similaires dans leur principe à ce que propose Android) et à des technologies de programmation de haut niveau telles que l’orienté objet, permet désormais de répondre aux contraintes de systèmes critiques sécurisés et fiables sur des marchés tels que l’industrie, l’automatisation, le médical, le contrôle/commande, la commande de moteurs et de capteurs, l’automobile, etc.

Les précédentes versions de VEE, rappelle la société nantaise, ont introduit la notion de conteneurs d’exécution de confiance (sandboxes) qui fournit divers types de contrôle pour améliorer la fiabilité système. Ces conteneurs isolent les applications entre elles et gèrent notamment l’utilisation de la mémoire RAM, les droits d’accès aux périphériques ainsi que la politique de sécurité. La version temps réel de MicroEJ VEE introduit en plus une dichotomie entre les tâches critiques et les autres tâches applicatives de telle sorte que toutes les activités VEE peuvent être préemptées à tout moment, avec une latence extrêmement faible et sans compromettre l’état du système complet. Parmi les applications typiques de cette capacité temps réel, on citera le contrôle d’évènements matériels en temps réel, y compris les entrées/sorties (E/S). Selon MicroEJ, le logiciel de haut niveau exécuté par l’environnement VEE temps réel peut ainsi contrôler ces E/S avec une gigue minimale (jitter), tout en restant portable sur une large gamme de processeurs et de systèmes d’exploitation temps réel sans recompilation (portabilité au niveau binaire).

Le runtime MicroEJ VEE est disponible sans redevance unitaire, sur la base d’un contrat pluriannuel, et toutes les options VEE peuvent être librement utilisées sur n’importe quel appareil, précise encore la société.