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 ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
9<br />
Chapitre III – AADL, un <strong>la</strong>ngage <strong>pour</strong> décrire les architectures<br />
10 property set AADL_Project is<br />
11 Max_Thread_Limit : constant aadlinteger<br />
12 => ;<br />
13<br />
14 Supported_Source_Language : type enumeration ();<br />
15 -- The following are examples software source <strong>la</strong>nguages:<br />
16 -- (Ada95, C, Simulink_6_5)<br />
17 end AADL_Project;<br />
Listing III.8 – Extrait <strong>des</strong> déc<strong>la</strong>rations de propriétés standard<br />
Le listing III.8 donne un extrait <strong>des</strong> déc<strong>la</strong>rations de propriétés standard qui illustre le paramétrage<br />
<strong>des</strong> propriétés. La définition de certaines propriétés standard font référence à <strong>des</strong> définitions<br />
re<strong>la</strong>tives au projet. L’ensemble AADL_Project dépend donc <strong>des</strong> outils AADL, qui doivent le définir<br />
en accord avec leurs propres possibilités ou limitations.<br />
L’ensemble <strong>des</strong> propriétés standard permet d’exprimer un certain nombre de caractéristiques<br />
sur les entités AADL. Nous en décrivons ici quelques unes, qui sont pertinentes <strong>pour</strong> nos travaux.<br />
Pério<strong>des</strong> et politiques de déclenchement <strong>des</strong> threads<br />
Le standard définit quatre politiques de déclenchement <strong>pour</strong> les threads, à l’aide de <strong>la</strong> propriété<br />
Dispatch_Protocol :<br />
– périodique ;<br />
– apériodique ;<br />
– sporadique ;<br />
– tâche de fond (background).<br />
Les threads périodiques se déclenchent d’eux-mêmes selon <strong>la</strong> période indiquée par <strong>la</strong> propriété<br />
Period. Les threads apériodiques se déclenchent sur l’arrivée d’un événement ou d’une<br />
donnée/événement sur l’un de leurs ports. Les threads sporadiques se déclenchent également à<br />
l’arrivée d’un événement, mais avec une période de garde indiquée par <strong>la</strong> propriété Period. Les<br />
threads en tâche de fond s’exécutent en continu.<br />
Descriptions <strong>des</strong> imp<strong>la</strong>ntations<br />
Le standard défini trois propriétés permettant d’associer un code source aux composants :<br />
– Source_Language permet de spécifier le <strong>la</strong>ngage utilisé dans <strong>la</strong> <strong>des</strong>cription ;<br />
– Source_Text permet d’indiquer <strong>la</strong> liste <strong>des</strong> fichiers contenant <strong>la</strong> <strong>des</strong>cription ;<br />
– Source_Name permet de préciser l’entité référencée dans le fichier (par exemple le nom de<br />
<strong>la</strong> procédure).<br />
La sélection du <strong>la</strong>ngage peut s’appliquer aux sous-programmes, données, threads, processus,<br />
bus, dispositifs et processeurs, permettant ainsi de décrire les composants logiciels (sousprogrammes,<br />
par exemple en C) ou matériels (processeurs, par exemple en VHDL).<br />
Contraintes spatiales et temporelles<br />
Diverses propriétés permettent d’exprimer les <strong>temps</strong> d’exécution ou de propagation à travers<br />
les composants. Ainsi, <strong>la</strong> propriété Propagation_De<strong>la</strong>y permet de spécifier une p<strong>la</strong>ge de <strong>temps</strong><br />
correspondant au <strong>temps</strong> de propagation d’un signal à travers un bus, Read_Time permet d’indiquer<br />
c○ 2007 Thomas Vergnaud 43