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

Utilisation d’AADL <strong>pour</strong> décrire une application<br />

répartie<br />

LA SYNTAXE D’AADL permet une grande flexibilité dans <strong>la</strong> façon de décrire une architecture.<br />

Il est possible d’adopter différents niveaux de précision selon <strong>la</strong> finalité de <strong>la</strong> <strong>des</strong>cription :<br />

documentation, génération automatique de code, évaluation <strong>des</strong> performances du système, etc.<br />

Cette flexibilité implique de définir un certain nombre d’orientations dans <strong>la</strong> façon de décrire les<br />

architectures.<br />

Dans ce chapitre nous montrons comment utiliser AADL <strong>pour</strong> supporter une démarche de modélisation.<br />

Nous abordons principalement deux approches différentes, l’une centrée sur <strong>la</strong> <strong>des</strong>cription<br />

du déploiement, et l’autre prenant en charge <strong>la</strong> <strong>des</strong>cription complète de l’application vis-à-vis<br />

<strong>des</strong> critères que nous avons énoncés au chapitre II, à savoir l’interfaçage avec l’application, <strong>la</strong><br />

configuration de chaque instance de l’intergiciel et le déploiement sur le réseau.<br />

IV-1 Utilisation d’AADL <strong>pour</strong> décrire le déploiement d’une application<br />

Nous exposons dans cette section une façon d’utiliser AADL <strong>pour</strong> décrire le déploiement<br />

d’une application répartie. Nous utilisons alors AADL comme <strong>la</strong>ngage de <strong>des</strong>cription, de <strong>la</strong> même<br />

façon que le <strong>la</strong>ngage utilisé par GLADE <strong>pour</strong> décrire le déploiement d’une application basée sur<br />

DSA. Ce <strong>la</strong>ngage permet de décrire tous les éléments de configuration au sein d’un même fichier<br />

en adoptant une organisation p<strong>la</strong>te. Il permet de déc<strong>la</strong>rer les différentes partitions ainsi que <strong>des</strong><br />

attributs qui s’y rapportent.<br />

IV-1.1 Identification <strong>des</strong> composants <strong>pour</strong> <strong>la</strong> <strong>des</strong>cription de <strong>la</strong> topologie<br />

Pour décrire <strong>la</strong> répartition <strong>des</strong> différents nœuds de l’application, nous nous p<strong>la</strong>çons à un niveau<br />

d’abstraction assez élevé, dans lequel <strong>la</strong> structure <strong>des</strong> nœuds n’est pas explicitée. Nous nous focalisons<br />

sur <strong>la</strong> <strong>des</strong>cription du déploiement et <strong>des</strong> re<strong>la</strong>tions entre les nœuds, sans préciser <strong>la</strong> nature<br />

<strong>des</strong> communications. Les composants à considérer sont donc principalement les processus et les<br />

processeurs. Ces deux catégories de composants permettent en effet de décrire complètement <strong>la</strong><br />

répartition d’une application. Les <strong>systèmes</strong> AADL permettent de structurer l’architecture.<br />

Dans <strong>la</strong> mesure où ce niveau de <strong>des</strong>cription architecturale ne rend pas compte du détail <strong>des</strong><br />

communications, nous pouvons décrire celles-ci de <strong>la</strong> façon <strong>la</strong> plus abstraite possible. Pour ce<strong>la</strong>,<br />

nous pouvons associer un port de donnée/événement en entrée/sortie à chaque processus de <strong>la</strong> modélisation.<br />

Ces ports ne sont associé à aucune déc<strong>la</strong>ration de composant de donnée ; <strong>la</strong> <strong>des</strong>cription<br />

c○ 2007 Thomas Vergnaud 53

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

Saved successfully!

Ooh no, something went wrong!