• Aucun résultat trouvé

Dans un premier temps, nous rappelons les principaux concepts de bases qui seront utilis´es dans le cadre de cette th`ese et les sp´ecificit´es de chaque concept. Puis, nous nous fo-calisons sur la probl´ematique de la reconfiguration soumise `a des ensembles des contraintes. Ensuite, nous exposons la solution propos´ee et nous pr´esentons les objectifs adapt´ees `a la r´esolution de cette probl´ematique.

Les syst`emes embarqu´es : Ce sont des syst`emes ´electroniques et informatiques int´egrant `a la fois des composants logiciels et mat´eriels, sont souvent utilis´es en raison de la diversit´e de leurs modes d’usage : Les syst`emes avioniques int`egrent des sous-syst`emes ´electroniques comme les syst`emes de navigation, radars, les syst`emes de g´en´eration et de distribution ´electrique, etc. Les syst`emes de t´el´ecommunications utilisent de nombreux syst`emes embarqu´es des commutateurs t´el´ephoniques aux t´el´ephones mobiles. Les r´eseaux informatiques utilisent ´egalement des routeurs bas´es sur des contrˆoleurs embarqu´es et des ponts de r´eseau pour acheminer les donn´ees. La miniaturisation des composants logiciels, mat´eriels et l’accroissement de la puissance de calcul dans les domaines de l’industrie sont aujourd’hui concern´es par cette r´evolution technologique.

Composant : Dans le cadre de notre travail, nous nous basons sur la technologie intitul´e ”Composant” pour r´epondre aux besoins de cette r´evolution. En effet, plusieurs travaux de recherche sur l’approche par composant visent le d´eveloppement des nouveaux types ou mod`eles de composants pour d´evelopper des syst`emes ou des applications int´

e-1.1. RAPPELS DES CONCEPTS FONDAMENTAUX

grants des composants. Ces composants sont tr`es utiles car ils s’adaptent aux diff´erents changements des besoins tels que la consommation d’´energie, la fiabilit´e, la performance et l’occupation physique, etc. Ces changements sont souvent en relation avec les environ-nements de fonctionnement et les r´evolutions du syst`eme : par exemple, changer le mode d’ex´ecution ou minimiser la performance d’un composant. Le composant devrait modifier ses comportements d’une fa¸con automatique au moment d’ex´ecution pour r´epondre aux changements des caract´eristiques de son environnement de l’ex´ecution. Nous prenons les exemples de l’occurrence d’une panne mat´erielle ou logicielle, un sc´enario de reconfigura-tion, une modification de l’architecture et un changement du mode d’ex´ecution qui obligent d’adapter le comportement d’un composant.

Mod´elisation des composants logiciels : Les travaux de recherche sur les syst`emes embarqu´es visent le d´eveloppement de mod`eles, de langages et d’outils pour la conception de syst`emes embarqu´es. Ces derniers sont construits de mani`ere modulaire `a partir de composants. Jusqu’alors, les composants avaient ´et´e envisag´es comme une d´ecomposition structurelle du syst`eme `a concevoir. Le d´efi actuel est de prendre en compte d’autres types de sp´ecifications comme les sp´ecifications structurelles et fonctionnelles. Les syst`emes embarqu´es sont `a la fois soumis `a des contraintes de capacit´es (m´emoire, bande passante), et `a des exigences non fonctionnelles (ex´ecution sous contraintes de temps r´eel). L’objectif principal dans ce domaine est d’´etudier des mod`eles formels permettant de d´ecrire ces syst`emes et leurs contraintes (conception, sp´ecification), de les construire (programmation, simulation, synth`ese, ex´ecution), et de les analyser (validation, v´erification).

Composant AADL : (Architecture Analysis and Design Language) Standardis´e par la soci´etie SAE (International Society of Automotive Engineers) en 2004 [FG12] pour l’analyse et de description d’architecture des syst`emes, qui est destin´e `a l’industrie des syst`emes embarqu´es. AADL d´ecrit plusieurs composants qui mod´elisent une partie du syst`eme. Certains composants sont mat´eriels (bus, processor, memory ...), d’autres logiciels (process, thread, subprogram, ...). AADL fournit une description sous forme de texte, XML et graphique pour d´ecrire des architectures mat´erielles et logicielles.

Automates temporis´es : Introduits par Alur et Dill dans [AD94], constituent un mod`ele classique dont la s´emantique s’exprime en terme de syst`eme de transitions

tem-poris´e. Ils sont form´es d’une structure de contrˆole finie et manipulent un ensemble fini de variables r´eelles appel´ees horloges pour sp´ecifier les contraintes de temps.

Logiques temporelles : Ces logiques ont ´et´e propos´ees pour la sp´ecification des sys-t`emes r´eactifs, pour la premi`ere fois en 1977 par Amir Pnueli [Pnu77]. Ce sont des forma-lismes adapt´es pour ´enoncer des propri´et´es faisant intervenir la notion d’ordonnancement dans le temps, par exemple : un radar envoie un signal `a la d´etection d’un objet.

UPPAAL : Un outil permet d’analyser des syst`emes form´es d’une collection d’auto-mates temporis´es qui communiquent par des variables enti`eres partag´ees et des synchroni-sations par messages. Les automates temporis´es d’Uppaal sont une variante des automates temporis´es d’Alur et Dill [AD94]. En plus des horloges, les automates d’Uppaal mani-pulent des variables enti`eres born´ees. Les transitions de ces automates sont ´etiquet´ees par des gardes, des remises `a z´ero, des mises `a jour de certaines variables enti`eres et des ´etiquettes de synchronisation m? et m! o`u m est un canal.

Reconfiguration dynamique : De nos jours, l’un des d´efis les plus importants est le compromis entre la performance et la r´eponse rapide aux changements du march´e et aux besoins des clients. L’une des directions les plus prometteuses pour r´esoudre ces probl`emes est la reconfiguration dynamique. La reconfiguration dynamique. Cette fonctionnalit´e se r´ef`ere au processus de modification de la structure et du comportement du syst`eme au cours de son ex´ecution. ˆEtre reconfigurable est important afin de r´eagir rapidement `a l’´evolution des besoins soudains et impr´evisibles avec un coˆut et un risque minimum.

Les exigences des syst`emes de contrˆole industriels ont progress´e de plus en plus en termes de flexibilit´e et d’agilit´e. En fait, les syst`emes statiques sont con¸cus pour garder la mˆeme structure et le mˆeme comportement tout au long de leur existence. Sinon, ces syst`emes n’ont pas la capacit´e de r´epondre `a un ´ev´enement externe. Ces syst`emes ne peuvent pas faire face aux conditions fluctuantes qui touchent leur environnement d’ex´ e-cution comme des pannes de machines, les changements d’objectifs, l’int´egration d’une nouvelle machine, la modification de la demande de l’utilisateur, etc. L’une des solutions pour r´epondre `a ces exigences est de rendre ces syst`emes capables de s’adapter dynamique-ment `a l’environnement et `a utiliser cette capacit´e d’adaptation afin de r´eduire leurs coˆuts et am´eliorer leur performance sans perturbations. En fait, selon l’´etat de leurs

Documents relatifs