Modélisation des systèmes temps-réel répartis embarqués pour la ...
Modélisation des systèmes temps-réel répartis embarqués pour la ...
Modélisation des systèmes temps-réel répartis embarqués pour la ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
100 connections<br />
Chapitre VIII – Mise en pratique<br />
101 event data port noeud1.s -> noeud2.e;<br />
102 event data port noeud2.s -> noeud1.e;<br />
103 properties<br />
104 Actual_Processor_Binding => reference processeur applies to<br />
noeud1;<br />
105 Actual_Processor_Binding => reference processeur applies to<br />
noeud2;<br />
106 end Client_Serveur.i2;<br />
Listing VIII.10 – Configuration alternative de l’application de test<br />
L’analyse du réseau de Petri correspondant fait immédiatement apparaître que le marquage<br />
initial est bloqué, traduisant le fait qu’en l’absence du processus initiateur, les deux processus de<br />
l’architecture ne se déclenchent pas.<br />
VIII-4 Conclusion<br />
Ce chapitre a été consacré à l’évaluation de notre approche de génération.<br />
Au cours de nos travaux nous avons développé une application, Ocarina, qui imp<strong>la</strong>nte les<br />
différentes transformations que nous avons décrites aux chapitres V, VI et VII. Ocarina constitue<br />
donc un compi<strong>la</strong>teur <strong>pour</strong> AADL.<br />
Pour mesurer les performances d’exécution, nous avons comparé une application AADL simple<br />
et différentes contreparties basées sur CORBA. Pour pouvoir établir facilement une comparaison,<br />
nous avons dû nous p<strong>la</strong>cer dans un contexte correspondant à une utilisation c<strong>la</strong>ssique de CORBA.<br />
Cette situation se révèle en l’occurrence défavorable à l’utilisation d’AADL ; notre application<br />
AADL est donc légèrement moins efficace. Nos mesures doivent donc être considérées comme<br />
une évaluation d’un pire cas.<br />
Une architecture « naturelle » <strong>pour</strong> AADL, mise en p<strong>la</strong>ce avec CORBA ou tout autre imp<strong>la</strong>ntation<br />
d’intergiciel impliquerait le développement d’une couche logicielle <strong>pour</strong> synchroniser l’arrivée<br />
<strong>des</strong> données <strong>des</strong> ports, semb<strong>la</strong>ble à celle que nous avons présentée en section VI.1, page 102,<br />
et qui constitue <strong>la</strong> personnalité AADL <strong>pour</strong> PolyORB. Le développement d’une telle application<br />
<strong>pour</strong> PolyORB/CORBA serait donc nécessairement plus coûteuse qu’une solution basée sur <strong>la</strong><br />
personnalité AADL, puisqu’elle ajouterait les traitements de <strong>la</strong> personnalité CORBA à <strong>la</strong> couche<br />
de synchronisation.<br />
La génération de réseau de Petri permet de mettre en évidence certaines propriétés structurelles<br />
comme le blocage <strong>des</strong> architectures. Le nombre d’état <strong>des</strong> réseaux produits dépend à <strong>la</strong> fois du<br />
nombre de threads AADL et de leur inter-connexions ; il est assez difficile de prévoir le nombre<br />
d’états.<br />
L’étude d’une architecture de grande taille nécessite a priori un travail de préparation afin de<br />
réduire <strong>la</strong> modélisation AADL, tout en conservant <strong>la</strong> sémantique d’exécution. Certaines opérations<br />
de réduction peuvent effectuées de façon systématique ; d’autres s’appuient sur <strong>des</strong> caractéristiques<br />
remarquables de l’architecture considérée.<br />
Nous avons étudié ici un système dans lequel les threads étaient fortement couplés, ce qui a<br />
permis de simplifier considérablement l’architecture. Nous n’avons cependant pas eu à prendre en<br />
compte les séquences d’appels de l’imp<strong>la</strong>ntation <strong>des</strong> threads, qui auraient généré beaucoup d’états.<br />
Dans une situation moins favorable, il peut être nécessaire de ne considérer que <strong>des</strong> sous-parties<br />
de l’architecture.<br />
c○ 2007 Thomas Vergnaud 169