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 ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Chapitre IV – Utilisation d’AADL <strong>pour</strong> décrire une application répartie<br />
L’interprétation <strong>des</strong> composants AADL proposée dans le standard AADL [SAE, 2006c] se<br />
focalise sur <strong>des</strong> <strong>systèmes</strong> centralisés ; elle ne prend pas en compte <strong>la</strong> présence d’un intergiciel <strong>pour</strong><br />
assurer les communications. De <strong>la</strong> même façon que nous concevons une architecture d’exécutif<br />
différente, notre interprétation <strong>des</strong> composants diverge également quelque peu <strong>des</strong> orientations<br />
proposées actuellement par le standard.<br />
Dans cette section nous décrivons les spécifications de l’exécutif AADL que nous définissons.<br />
Ces spécifications correspondent à un raffinement de <strong>la</strong> sémantique décrite dans le standard. Nous<br />
présentons également les patrons architecturaux AADL correspondant à ces spécifications.<br />
IV-5.1 Re<strong>la</strong>tion avec les <strong>des</strong>criptions comportementales<br />
Nous avons établi en section IV-4.2 que les sous-programmes AADL constituent <strong>la</strong> <strong>des</strong>cription<br />
de l’application tandis que les threads AADL représentent l’intergiciel d’exécution. Seuls les sousprogrammes<br />
sont donc censés encapsuler <strong>des</strong> <strong>des</strong>criptions comportementales.<br />
L’exploitation <strong>des</strong> threads AADL est totalement prise en charge par le générateur d’exécutif ;<br />
seules les <strong>des</strong>criptions comportementales associées aux sous-programmes sont pris en compte.<br />
IV-5.2 Interprétation <strong>des</strong> séquences d’appel<br />
Un sous-programme AADL peut contenir une séquence d’appels qui décrit son flux d’exécution.<br />
Dans le cas de plusieurs séquences, le standard AADL stipule que celles-ci doivent être associées<br />
à <strong>des</strong> mo<strong>des</strong> de configuration distincts. Ainsi un sous-programme ne peut exécuter qu’une<br />
seule séquence, correspondant à son mode de configuration. Cette approche limite <strong>la</strong> <strong>des</strong>cription<br />
d’éventuels branchement conditionnels dans les composants ; de tels branchements correspondraient<br />
en effet à un ensemble de mo<strong>des</strong> de configuration.<br />
Une telle logique de modélisation empêche de représenter de façon efficace <strong>des</strong> séquences<br />
d’exécutions alternatives ; il faudrait alors les intégrer dans une modélisation complexe basée sur<br />
<strong>des</strong> changements de mode systématiques. L’interprétation <strong>des</strong> séquences d’appel suggérée par le<br />
standard suppose donc que les applications modélisées effectuent <strong>des</strong> actions systématiques et<br />
inconditionnelles.<br />
Nos travaux s’intéressent à <strong>la</strong> modélisation d’applications éventuellement complexes, qui sont<br />
donc susceptibles de définir plusieurs flux d’exécution différents. Dans ces conditions, recourir<br />
aux mo<strong>des</strong> AADL conduirait à une explosion combinatoire <strong>des</strong> mo<strong>des</strong> de configuration.<br />
Nous adoptons donc une interprétation alternative.<br />
Spécification IV.1 (Interprétation <strong>des</strong> séquences d’appels multiples)<br />
L’imp<strong>la</strong>ntation d’un sous-programme AADL peut contenir plusieurs séquences d’appels.<br />
Ces séquences modélisent différents scénarios d’exécution possibles ; elles doivent être<br />
coordonnées par une <strong>des</strong>cription comportementale associée au sous-programme.<br />
Plusieurs séquences d’appel peuvent coexister au sein d’un même mode de configuration ;<br />
elles modélisent alors différents flux d’exécution possibles. La <strong>des</strong>cription comportementale permettant<br />
de contrôler ces flux doit être fournie par l’utilisateur, comme nous le décrirons dans les<br />
chapitres V et VII.<br />
Nous étendons ainsi <strong>la</strong> sémantique d’AADL sans <strong>la</strong> remettre en cause : il est toujours possible<br />
de décrire une séquence d’appel par mode de configuration.<br />
c○ 2007 Thomas Vergnaud 65