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.

<strong>Modélisation</strong> <strong>des</strong> <strong>systèmes</strong> <strong>temps</strong>-<strong>réel</strong> <strong>répartis</strong> <strong>embarqués</strong><br />

Deux nouveaux types d’interfaces doivent être ajoutés :<br />

– requires subprogram access<br />

– provi<strong>des</strong> subprogram access<br />

Ces deux nouveaux éléments d’interface ont <strong>la</strong> même syntaxe que les accès aux bus ou aux<br />

données. Ils s’appliquent aux sous-programmes, thread, processus, données et <strong>systèmes</strong>. Un sousprogramme<br />

ne peut néanmoins pas fournir d’accès.<br />

La connexion de tels interfaces est autorisée entre un type de composant et une imp<strong>la</strong>ntation.<br />

Par exemple, une imp<strong>la</strong>ntation de composant peut être connectée à une interface associée au type<br />

de composant correspondant. Il est ainsi possible de connecter différentes imp<strong>la</strong>ntations d’un sousprogramme<br />

à une interface donnée.<br />

De <strong>la</strong> même façon, nous introduisons une construction syntaxique supplémentaire <strong>pour</strong> les<br />

séquences d’appel. Deux types d’appels sont alors possibles :<br />

– subprogram<br />

– subprogram access<br />

De cette façon, nous différencions le paradigme d’appel « traditionnel » de celui que nous<br />

ajoutons.<br />

Application<br />

La nouvelle syntaxe facilite <strong>la</strong> sélection du sous-programme qui doit effectivement être appelé,<br />

comme l’illustre le listing III.12. La sélection du sous-programme à appeler ne se fait plus<br />

au niveau de l’imp<strong>la</strong>ntation du thread mais au moment de son instanciation au sein du processus.<br />

La sélection du sous-programme devient donc un paramètre de configuration, et plus une caractéristique<br />

intrinsèque du thread.<br />

1 thread thread_a<br />

2 features<br />

3 p : requires subprogram access sp2;<br />

4 end thrad_a;<br />

5<br />

6 subprogram sp_a end sp_a;<br />

7<br />

8 subprogram sp_a.impl1 end sp_a.impl1;<br />

9 subprogram sp_a.impl2 end sp_a.impl2;<br />

10<br />

11 thread implementation thead_a.impl<br />

12 calls {<br />

13 appel1 : subprogram access p;<br />

14 };<br />

15 end thread_a.impl;<br />

16<br />

17 process processus_a<br />

18 end processus_a;<br />

19<br />

20 process implementation processus_a.config1<br />

21 subcomponents<br />

22 sp1 : subprogram sp_a;<br />

23 thread1 : thread thread_a.impl;<br />

24 connections<br />

25 subprogram access sp1 -> thread1.p;<br />

48 c○ 2007 Thomas Vergnaud

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

Saved successfully!

Ooh no, something went wrong!