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

29 Date_Start := Clock;<br />

30 Addition.Add (myadd, Mesg + 1);<br />

31 elsif Mesg = 200001 then<br />

32 Date_End := Clock;<br />

33 E<strong>la</strong>psed_Time := Date_End - Date_Start;<br />

34 Ada.Text_IO.Put_Line<br />

35 ("E<strong>la</strong>psed time : " & Duration’Image (E<strong>la</strong>psed_Time));<br />

36 Addition.Add (myadd, 0);<br />

37 else<br />

38 Addition.Add (myadd, Mesg + 1);<br />

39 end if;<br />

40 end Add;<br />

41<br />

42 procedure Set_Target is<br />

43 Ior : String (1 .. 1024);<br />

44 L : Natural;<br />

45 begin<br />

46 Ada.Text_IO.Put ("target ior =");<br />

47 Ada.Text_IO.Get_Line (Ior, L);<br />

48 CORBA.ORB.String_To_Object<br />

49 (CORBA.To_CORBA_String (Ior (1 .. L)), myadd);<br />

50 end Set_Target;<br />

51<br />

52 end Addition.Impl;<br />

Listing VIII.9 – Code source de <strong>la</strong> méthode <strong>pour</strong> le passage de messages CORBA<br />

La procédure Set_Target permet de spécifier <strong>la</strong> <strong>des</strong>tination <strong>des</strong> messages ; elle doit être appelée<br />

avant l’exécution du nœud initiateur afin de mettre en p<strong>la</strong>ce les références entre les deux nœuds<br />

de l’application.<br />

L’imp<strong>la</strong>ntation du nœud initiateur est semb<strong>la</strong>ble à celle du client CORBA de <strong>la</strong> première<br />

application-témoin ; l’imp<strong>la</strong>ntation <strong>des</strong> nœuds applicatifs est semb<strong>la</strong>ble à celle du serveur CORBA.<br />

VIII-2.3 Résultats<br />

Nous effectuons deux séries de mesures, <strong>pour</strong> 20 000 messages et 200 000 messages. De cette<br />

façon, nous pouvons détecter un éventuel dé<strong>la</strong>i d’exécution fixe, correspondant à <strong>la</strong> mise en p<strong>la</strong>ce<br />

<strong>des</strong> nœuds applicatifs. Nous nous servons d’un PC mono-processeur Athlon 2500+. Les résultats<br />

<strong>des</strong> mesures sont rassemblés dans le tableau VIII.1.<br />

communications 20000 200000<br />

PolyORB/AADL 4,3 s 43,5 s<br />

PolyORB/CORBA 3,2 s 32,5 s<br />

rapport AADL/CORBA +37% +33%<br />

PolyORB/CORBA oneway 2,7 s 27,1 s<br />

rapport AADL/CORBA oneway +63% +60%<br />

TAB. VIII.1 – Comparaison <strong>des</strong> <strong>temps</strong> d’exécution <strong>des</strong> applications AADL et CORBA <strong>pour</strong> <strong>la</strong><br />

transmission d’entiers<br />

164 c○ 2007 Thomas Vergnaud

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

Saved successfully!

Ooh no, something went wrong!