04.07.2013 Views

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 ...

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!