I.5.3. Exécutif ou noyau temps réel
L'exécutif ou le noyau temps réel peut
être assimilé comme étant un système d'exploitation
de petite taille dédié aux applications de
contrôle-commande. Sa caractéristique principale est son
déterminisme d'exécution avec des paramètres temporels
fixés.
Le noyau est la partie fondamentale d'un
système d'exploitation. Etant donné qu'une application temps
réel est un système multitâche, le noyau temps réel
a pour rôle essentielle de gérer l'enchaînement et la
concurrence des tâches en optimisant l'occupation de l'unité
centrale du système informatique. C'est-à-dire, gérer les
ressources matérielles et permettre aux différents composants
matériels et logiciels de communiquer entre eux.
Pour plus de détail, nous scindons en trois parties les
fonctions qu'occupe un noyau
temps réel :
1. Gestion des entrées/sorties : gestions des
interruptions, gestion d'interfaces d'entrée/sortie, gestion de
réseaux de communication...
2. Ordonnancement des tâches : organisation de
fonctionnement normale, surveillance,
T.F.E 2015 | Benito Lubuma L2 Génie info
16
changement de mode, traitement des surcharges...
3. Relation entre les tâches : communication,
synchronisation,
4. accès aux ressources critiques, gestion du temps...
Il est à noter que le noyau temps réel n'est
actif que lorsqu'une tâche le sollicite et cela via une requête.
L'ensemble de ces requêtes sollicitant le noyau est servi par un module
du noyau qu'on appelle primitive.
Figure I. 6 Interaction entre une tache et noyau temps
réel
Le noyau temps réel réactive une tâche de
l'application selon un algorithme d'ordonnancement et en générale
le noyau temps réel centralise toutes les demandes d'activation des
tâches et les tables qui permettent de gérer les priorités
ou les urgences des tâches et aussi de vérifier les états
des tâches
D'une manière générale on peut
représenter l'architecture logicielle d'une application temps
réel comme suit :
Figure I. 7 Architecture logicielle d'une application temps
réel
Dans le cas d'un système temps réel à
contraintes temporelles strictes, l'ordonnanceur a pour objectif principal de
répondre aux cas suivants :
? Faute temporelle : correspond au dépassement de la
date de fin d'exécution ou d'une échéance et cela conduit
à la notion d'urgence.
? Surcharge : l'accumulation de plusieurs fautes temporelles
peut entrainer l'ordonnanceur à agir d'une manière à
supprimer certaines tâches ce qui conduit à la notion d'importance
des tâches. C'est-à-dire, le choix d'une tâche à
s'exécuter par rapport aux spécifications fonctionnelles de
l'application.
T.F.E 2015 | Benito Lubuma L2 Génie info
17
|