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 VI – Construction et configuration de l’interface avec l’intergiciel d’exécution<br />

d’une réponse si nécessaire ; lorsque celle-ci est reçue, elle est retraduite sous forme neutre et<br />

signalée à <strong>la</strong> couche neutre, qui <strong>la</strong> transmet à <strong>la</strong> personnalité applicative.<br />

À <strong>la</strong> réception d’une demande d’invocation, l’identité de l’entité cible et de <strong>la</strong> requête concernées<br />

sont extraites, ainsi que les paramètres associés. Une requête sous forme neutre est construite<br />

et confiée à <strong>la</strong> couche neutre, <strong>pour</strong> que celle-ci l’envoie vers <strong>la</strong> personnalité applicative locale ou <strong>la</strong><br />

retransmette vers un autre nœud lorsqu’une passerelle entre deux protocoles est établie. Une fois<br />

<strong>la</strong> requête traitée, <strong>la</strong> couche neutre signale à <strong>la</strong> couche protoco<strong>la</strong>ire que <strong>la</strong> réponse éventuelle peut<br />

être retournée à l’intergiciel client.<br />

Le service de protocole s’apparente à un automate. La modélisation AADL correspondante est<br />

donc un sous-programme appe<strong>la</strong>nt les sous-programmes d’autres services, tels que le service de<br />

représentation et le service de transport. Il est constitué de séquences d’appels vers les différents<br />

composants AADL pilotés par le protocole ; l’imp<strong>la</strong>ntation en code source remplit les fonctions<br />

de coordination <strong>des</strong> différents appels. Son interface est vide (cf. listing VI.6).<br />

1 package Ipao::Protocol<br />

2 public<br />

3 subprogram Protocol<br />

4 end Protocol;<br />

5 end Ipao::Protocol;<br />

VI-3.4.5 Transport<br />

Listing VI.6 – <strong>Modélisation</strong> du service de protocole<br />

La fonction de transport s’occupe de transférer une information d’un nœud à un autre. Les<br />

points d’accès et de terminaison du service de transport représentent <strong>des</strong> entités permettant à l’intergiciel<br />

d’interagir avec les autres nœuds de l’application. Les instants où <strong>des</strong> événements se<br />

produisent sur ces entités et requièrent l’attention de l’intergiciel ne sont pas connus a priori. Ces<br />

objets constituent donc <strong>des</strong> sources d’événements asynchrones qui doivent être scrutées par l’intergiciel<br />

<strong>pour</strong> que ces événements externes soient pris en compte.<br />

Ce service doit prendre appui sur une bibliothèque existante, telles que les primitives d’entrées/sorties<br />

du système d’exploitation. Il s’agit typiquement de deux opérations send et receive,<br />

auxquelles s’ajoutent <strong>des</strong> mécanismes de configuration.<br />

Dans le cadre de <strong>la</strong> modélisation en AADL, ce service est donc principalement constitué <strong>des</strong><br />

deux sous-programmes AADL send et receive, comme illustré sur le listing VI.7. Ils matérialisent<br />

<strong>la</strong> bibliothèque de communication qui constitue l’intergiciel de communication de bas niveau.<br />

1 package Ipao::Transport<br />

2 public<br />

3 subprogram Send<br />

4 features<br />

5 Communication : in parameter;<br />

6 end Send;<br />

7<br />

8 subprogram Receive<br />

9 features<br />

10 Communication : out parameter;<br />

11 end Receive;<br />

12 end Ipao:Transport;<br />

Listing VI.7 – <strong>Modélisation</strong> du service de transport<br />

c○ 2007 Thomas Vergnaud 113

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

Saved successfully!

Ooh no, something went wrong!