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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

90 end Processeur;<br />

91<br />

92 system Client_Serveur<br />

93 end Client_Serveur;<br />

94<br />

Chapitre VIII – Mise en pratique<br />

95 system implementation Client_Serveur.i<br />

96 subcomponents<br />

97 <strong>la</strong>nceur : process Processus_Lanceur.i {Arao::Port_Number =><br />

10000;};<br />

98 noeud1 : process Processus_Applicatif.i {Arao::Port_Number =><br />

10002;};<br />

99 noeud2 : process Processus_Applicatif.i {Arao::Port_Number =><br />

10003;};<br />

100 processeur : processor Processeur;<br />

101 connections<br />

102 event data port <strong>la</strong>nceur.s -> noeud1.e;<br />

103 event data port noeud1.s -> noeud2.e;<br />

104 event data port noeud2.s -> noeud1.e;<br />

105 properties<br />

106 Actual_Processor_Binding => reference processeur applies to<br />

<strong>la</strong>nceur;<br />

107 Actual_Processor_Binding => reference processeur applies to<br />

noeud1;<br />

108 Actual_Processor_Binding => reference processeur applies to<br />

noeud2;<br />

109 end Client_Serveur.i;<br />

Listing VIII.3 – Déploiement de l’application de test<br />

L’imp<strong>la</strong>ntation <strong>des</strong> sous-programmes <strong>des</strong> nœuds applicatifs effectue une addition. L’essentiel<br />

du <strong>temps</strong> de traitement correspond donc à l’exécution <strong>des</strong> mécanismes de <strong>la</strong> couche applicative<br />

AADL et <strong>des</strong> composants de PolyORB. Les deux nœuds principaux de l’application sont symétriques<br />

; nous n’avons pas <strong>la</strong> notion de client et de serveur. Une seule <strong>des</strong>cription comportementale<br />

est donc nécessaire (listing VIII.4).<br />

1 with Partition;<br />

2 with Ada.Text_IO;<br />

3 with Ada.Calendar;<br />

4<br />

5 package body Repository is<br />

6<br />

7 Date_Start, Date_End : Ada.Calendar.Time;<br />

8<br />

9 procedure Initiateur (s : out Partition.Donnee) is<br />

10 use Ada.Text_IO;<br />

11 begin<br />

12 Put_Line ("initiation");<br />

13 s := 1;<br />

14 end Initiateur;<br />

15<br />

16 procedure Application (e : in Partition.Donnee; s : out<br />

Partition.Donnee) is<br />

17 use Ada.Calendar;<br />

18 use Ada.Text_IO;<br />

c○ 2007 Thomas Vergnaud 159

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

Saved successfully!

Ooh no, something went wrong!