La complexité des procédés temps réel à commander ou à superviser, le nombre élevé de données et d’événements à traiter, la répartition topologique des procédés, d’une part, et l’apparition depuis plusieurs années de réseaux dédiés aux systèmes embarqués, d’autre part, sont tous des facteurs qui ont conduit à repenser les applications temps réel centralisées. Aujourd’hui, la notion d’architecture répartie, ou distribuée, est très utilisée dans le milieu industriel, notamment dans l’industrie du transport. À titre d’exemple, les domaines d’applications faisant couramment appel aux architectures réparties sont :
-
le contrôle d’équipements dans les transports (avionique, automobile, ferroviaire...) ;
-
le contrôle et la régulation de trafic en milieu urbain ;
-
les industries (contrôle/commande de procédés...) ;
-
le domaine militaire (suivi de trajectoires de missiles...) ;
-
le domaine aérospatial (suivi de satellites, pilotage automatique...) ;
-
la domotique (sécurité d’habitations...) ;
-
les télécommunications (systèmes de commutation...) ;
-
le domaine médical (assistance et contrôle de malades...).
Un système informatique destiné à commander ou à superviser des opérations est composé, le plus souvent, de plusieurs unités de traitement (ordinateurs, automates programmables, ECU [Electronic Control Unit]...), des capteurs, des actionneurs, des périphériques de visualisation et de dialogue avec les opérateurs. L’ensemble de ces éléments est interconnecté par un réseau ou par plusieurs réseaux interconnectés entre eux (des réseaux industriels, des réseaux bureautiques, des bus de terrain, etc.). Ce type de système est qualifié de système temps réel et réparti (ou distribué ou encore décentralisé).
Dans ce type de système, l’ordonnancement des tâches et des messages joue un rôle fondamental dans le processus de validation temporelle de ceux-ci. Nous présentons dans cet article les différentes techniques d’analyse d’ordonnançabilité des tâches, en fonction de leur type, et des messages en fonction du type de réseau utilisé (CAN, AFDX...).