Vous êtes sur la page 1sur 4

Système d’exploitation

Chapitre 2 :Gestion des processus

Objectifs
• Comprendre le mécanisme de gestion de processus.

• Différencier entre les états d'un processus.

• Comprendre le rôle de l'ordonnanceur

1-Définitions

a-Ressource
On appelle ressource tout ce qui est nécessaire à l'avancement d'un processus (continuation ou progression
de l'exécution) : processeur, mémoire, périphérique, bus, réseau, compilateur, fichier, message d'un autre
processus, etc...

Un défaut de ressource peut provoquer la mise en attente d'un processus.

b-Ordonnanceur
Un processeur n'est capable de traiter qu'un seul processus à la fois. Un sous-ensemble du système
d'exploitation, appelé ordonnanceur, ou encore Scheduler, organise les tâches et les fait commuter tout à
tour pour donner l'impression qu'elles s'exécutent toutes simultanément.

2-Les interruptions

a-Définition
Une interruption est une commutation de l'état (contexte) d'un processus provoquée par un signal généré par
le matériel. Ce signal est la conséquence d'un événement interne à un processus, résultant de son exécution,
ou bien extérieur et indépendant de son exécution.

→C'est un arrêt temporaire de l'exécution d'un processus.

b-Niveaux d'interruption
On distingue au moins 3 niveaux d'interruption :
• les interruptions externes : ces sont des interruptions indépendantes du processus exemple: panne,
intervention de l'opérateur, ...

• les déroutements ou encore les interruptions internes qui sont liée au processus et qui proviennent
d'une situation exceptionnelle ou d'une erreur liée à l'instruction en cours d'exécution (division par
0, débordement de mémoire, ...).

• les appels système : comme les demandes d'entrée-sortie par exemple.

c-Exécution
L'exécution d'un processus dure un certain temps, avec un début et (parfois) une fin.

Un processus peut être démarré par un utilisateur par l'intermédiaire d'un périphérique ou bien par un autre
processus.

les « applications » utilisateur sont des ensembles de processus.

Un processus peut s'arrêter de plusieurs manières :

1. Arrêt normal: volontaire.

2. Arrêt pour erreur: volontaire.

3. Arrêt pour erreur fatale: involontaire.

4. Le processus est arrêté par un autre processus: involontaire.

3-Les états d'un processus

a-Introduction
Les processus, puisqu'ils sont concurrents et doivent se partager le processeur, ne peuvent être
continuellement actifs. Ils ont donc, si on ne considère pour commencer que l'ordonnancement à court terme,
trois niveaux fondamentaux et quatre transitions possibles.

b-L'ordonnancement à court terme


Pour l'ordonnancement à court terme, nous avons trois niveaux fondamentaux et quatre transitions
possibles.
Elu signifie en cours d'exécution.

L'exécution n'est interrompue que par les conditions suivantes :

• Transition 1 : Le processus se bloque, faute de données pour l'alimenter ou en attendant une opération
d'entrée/sortie.

• Transition 2 : Le processus est interrompu soit parce que la tranche de temps qui lui est impartie est
achevée soit parce qu'un processus de plus haute priorité réquisitionne le processeur.

L'état Prêt est un état provisoire pour permettre aux autres processus de s'exécuter quasi simultanément.

L'état Bloqué est un état d'attente d'un événement extérieur, tel qu'une entrée/sortie, nécessaire à la
poursuite de l'exécution du processus

c-L'ordonnancement à long terme


Ajoutons deux états qui correspondent à l'ordonnancement à long terme : les états " Nouveau " et " Terminé
".
Nouveau : le processus vient d'être créé mais n'existe pas encore qu'à l'état de requête de processus en
attendant d'être admis par l'ordonnanceur en tant que processus activable.

Terminé : le processus est désormais inactif car il a achevé sa tâche. Il sera détruit prochainement par le
système d'exploitation pour libérer de la place en mémoire.

Le processus est parfois conservé pendant un temps à l'état terminé en attendant qu'une entrée/sortie s'achève
ou que les données de ce processus soient exploitées par un autre. On parle alors de processus " zombie".