Précédent : Construction de systèmes distribués
par Remonter : Présentation et objectifs généraux
Suivant : Gestion efficace de
ressources
Spécifier un système de façon abstraite ne permet de construire que des systèmes pour lesquels une spécification est possible, ce qui n'est le cas que pour certains types de systèmes. La notion d'architecture logicielle ne peut alors s'appliquer. Pourtant, il est possible de construire des systèmes distribués satisfaisant les contraintes d'applications d'une autre façon, par enrichissement. La construction de systèmes distribués par enrichissement consiste à élargir les capacités d'un système distribué de base en y incorporant des fonctionnalités additionnelles jouant un rôle particulier. Chaque fonctionnalité apporte une technique de gestion de ressources particulière qui répond, en elle-même, ou en conjonction avec d'autres fonctionnalités, à tout ou partie des exigences des applications. Idéalement, les fonctionnalités disponibles ont la vocation d'être génériques, c'est-à-dire suffisamment flexibles et puissantes pour couvrir les besoins de classes d'applications différentes. En général, les fonctionnalités disponibles sont regroupées dans une bibliothèque extensible. Le projet Solidor explore les aspects de la construction de systèmes distribués par enrichissement en se focalisant sur les applications issues du domaine du temps-réel à sûreté critique (systèmes de fusées et contrôles de vol, équipements de haute technologie dans le domaine médical, etc.). Ces applications s'appuient sur des systèmes distribués devant obligatoirement être hautement fiables (typiquement, moins d'une défaillance pour 100 000 heures de fonctionnement), prompts (typiquement, temps de réponse inférieurs à 10ms) et devant préserver la cohérence des données malgré l'exécution concurrente ou parallèle de tâches. Ces contraintes agissent les unes sur les autres, rendant toute solution très complexe et faisant que le système réparti élaboré ne fonctionne généralement pas dans un contexte où une exigence serait légèrement différente. Afin de diminuer sensiblement les coûts de construction de systèmes répartis pour applications temps-réel à sûreté critique, le projet Solidor met au point une bibliothèque de fonctionnalités qui viennent enrichir un système réparti élémentaire. Ces fonctionnalités fournissent par exemple différents types d'ordonnancements de tâches ou encore plusieurs modes de communication ayant des critères de fiabilité et de temps de réponse différents. Cette bibliothèque est conçue comme un ensemble de fonctionnalités requises par la majorité des applications temps-réel à sûreté critique.