Description
Date depot: 1 janvier 1900
Titre: Maîtrise de la couche hyperviseur dans une architecture multi-coeur COTS afin de prédire les pires temps d'exécution nécessaires à la certification
Directeur de thèse:
Laurent PAUTET (LTCI (EDMH))
Domaine scientifique: Sciences et technologies de l'information et de la communication
Thématique CNRS : Non defini
Resumé:
Contexte
Le programme A380 a marqué le début d’une mutation de l’architecture
des systèmes informa- tiques dans l’avionique. Ce programme a démontré
la faisabilité et les avantages du passage d’une architecture
distribuée reposant sur des calculateurs à fonction unique
(architecture dite fédérée) vers une architecture où un seul
calculateur hébergerait plusieurs fonctions. De là est né le concept
dit d’IMA, signifiant Integrated Modular Avionique.
Ce concept d’IMA a permis de rationaliser l’électronique de bord en
ramenant de plusieurs di- zaines (environ 37) à quelques unités (7),
les différents types de calculateurs nécessaires pour exécuter
l’ensemble des applications embarquées dans un avion (carburant,
freinage, moteur, électricité, cabine, climatisation, pilote
automatique, « flight management system », etc.)
Cette mutation a pu être observée chez les deux principaux
constructeurs avec l’A380 côté AIRBUS et le B787 côté BOIENG. Cette
convergence a donné naissance à un standard : l’IMA [1] dit de
première génération ou IMA1G. Ce phénomène d’uniformisation des
calculateurs s’amplifie avec le programme A350 dans lequel ces 7 types
de calculateurs différents ont été réduits à 2 types pour supporter
l’ensemble des fonctions avioniques.
Une des finalités de l’IMA est de proposer une vision de
l’architecture centrée sur des modules logiciels « indépendants »
déployés sur une nombre réduit de calculateurs relativement puis- sant
de type COTS, Pour atteindre cet objectif, il faut s’assurer que ces
modules logiciels puis- sent partager les ressources matérielles tout
en restant rester le plus indépendant possible du point de vue de leur
propriétés fonctionnelles et non-fonctionnelles. La maitrise du
comporte- ment de l’architecture logicielle requiert celle du
matériel, ainsi qu’une bonne connaissance des moyens disponibles pour
contrôler le matériel depuis le logiciel à l’exécution.
Problématique
Depuis plusieurs années, le marché des processeurs a évolué des
architectures dites mono- cœurs vers des architectures dites
multi-cœurs.
Conjointement aux problèmes posés par le changement d’architecture
logicielle dû à l’IMA, il est nécessaire de prendre en compte
l’évolution de la chaine d’approvisionnement en proces- seurs. Au delà
du gain potentiel évident en termes de puissance de calcul, les
architectures multi-cœurs sont simplement plus présentes sur le marché
que les architectures mono-cœurs. Il est possible qu’à moyen terme la
production de mono-cœurs offrant des performances suffisan- tes soit
tout simplement impossible. C’est ce constat qui motive de nombreux
acteurs de l’industrie aéronautique ou automobile à mener des
recherches sur l’impact de ces technologies sur les résultats acquis
pour des architectures mono-cœurs.
La maîtrise de ces évolutions d’architectures logicielles et
matérielles ne pourra se faire que si les méthodes et technologies de
génie logiciel associées sont elles mêmes maîtrisées. Par exemple, il
est clair qu’il faudra assurer la conservation des acquis de l’IMA, en
particulier concernant les propriétés d’isolation des modules
logiciels. Les deux propriétés à conserver concernant l’approche IMA
sont les propriétés de ségrégation des modules et la maîtrise des pire
temps de réponses de chaque module. Ces propriétés sont assurées soit
par construc- tion soit par analyse en amont de l’architecture lors de
sa conception.
Les supports d’exécution IMA tels que ceux compatibles avec le
standard ARINC 653 doivent être configurés statiquement en déclarant
les propriétés de chaque module logiciel a priori. C’est cette
configuration qui permet en opération de maintenir l’isolation
spatiale et temporelle entre modules malgré leur défaillance
potentielle. Le cœur de cette configuration consiste à spécifier les
caractéristiques temporelles des tâches constituant les modules
logiciels indé- pendants (appelés partitions).
Cette configuration logicielle passe par une estimation a priori du
temps d’exécution de chaque tâche d’un module et de l’impact des
dépendances entre tâches sur le pire temps de réponse du module
logiciel. De nombreuses études se sont attaquées au problème de
l’estimation des pires temps d’exécution sur des architectures
multi-cœurs. Cependant, il est possible que l’obligation de séparation
temporelle et spatiale modifie en profondeur les perfor- mances des
processeurs. Il s’agit donc d’étudier ces problématiques d’estimation
des caracté- ristiques temporelles d’une tâche dans le cas où le
fonctionnement interne du processeur et du support logiciel ARINC
déployé ont été adaptés pour assurer l’isolation des modules.
Sujet de Thèse
L’évolution conjointe de l’architecture logicielle et matérielle de
l’informatique de bord d’un avion est une problématique forte en terme
de recherche appliquée. Cette évolution transforme en profondeur la
nature et les contraintes de réalisation de tels systèmes sur
plusieurs points :
• L’élargissement constant d
Doctorant.e: Jean Xavier