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.

Chapitre IV – Utilisation d’AADL <strong>pour</strong> décrire une application répartie<br />

14 in_msg : in event data port;<br />

15 properties<br />

16 dispatch_protocol => aperiodic;<br />

17 end a_server;<br />

18<br />

19 thread implementation a_server.impl<br />

20 end a_server.impl;<br />

21<br />

22 system global end global;<br />

23<br />

24 system implementation global.impl<br />

25 subcomponents<br />

26 client1 : thread a_client.impl;<br />

27 server1 : thread a_server.impl;<br />

28 connections<br />

29 event data port client1.out_msg -> server1.in_msg;<br />

30 end global.impl;<br />

Listing IV.10 – <strong>Modélisation</strong> d’une architecture basée sur le passage de message<br />

Le protocole de déclenchement du serveur est ici apériodique, tandis que le client est périodique,<br />

avec une période de 10 secon<strong>des</strong>. Un client peut être constitué d’un thread en tâche de fond<br />

(background).<br />

IV-5.3.2 Appel de procédure distante<br />

Spécification IV.3 (Appels de procédure distante)<br />

Les appels de procédures distantes sont matérialisés par <strong>des</strong> sous-programmes fournis<br />

comme éléments d’interface d’un thread. Un appel à de tels sous-programmes à partir<br />

d’un autre thread modélise un appel distant.<br />

Un tel mécanisme de communication suppose que le thread serveur se déclenche à l’appel<br />

<strong>des</strong> sous-programmes qu’il fournit. Ceci implique que le thread a une politique de déclenchement<br />

apériodique.<br />

Du côté du client, le sous-programme ou le thread appelle le sous-programme distant par<br />

l’intermédiaire d’un accès à sous-programme. Le listing IV.11 illustre une architecture basée sur<br />

un mécanisme d’appel distant.<br />

1 subprogram a_rpc<br />

2 features<br />

3 a : in parameter;<br />

4 b : out parameter;<br />

5 end a_rpc;<br />

6<br />

7 thread a_server<br />

8 features<br />

9 rpc1 : server subprogram a_rpc;<br />

10 properties<br />

11 dispatch_protocol => aperiodic;<br />

12 end a_server;<br />

Listing IV.11 – <strong>Modélisation</strong> d’une architecture basée sur l’appel de sous-programme distant<br />

c○ 2007 Thomas Vergnaud 67

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

Saved successfully!

Ooh no, something went wrong!