Next: La table des processus Up: Les processus Previous: Lecture du diagramme d'état.

Un exemple d'exécution

Plaçons-nous dans la situation suivante: l'ensemble de la mémoire est occupé par des processus, mais, le processus le plus prioritaire est un processus dans l'état 5, soit: "prêt à s'exécuter en zone de swap". Pour pouvoir exécuter ce processus, il faut le placer dans l'état 3, soit: "prêt à s'exécuter en mémoire". Pour cela le système doit libérer de la mémoire (faire de la place), en faisant passer des processus des états 3 ou 4 en zone de swap (swapout) donc les faire passer dans les états 5 et 6.

C'est au swappeur de réaliser les deux opérations:

Le processus a un contrôle sur un nombre réduit de transitions: il peut faire un appel système, réaliser un exit, réaliser un sleep, les autres transitions lui sont dictées par les circonstances.

L'appel à exit() fait passer dans l'état zombie, il est possible de passer à l'état zombie sans que le processus ait explicitement appelé exit() (à la réception de certains signaux par exemple).

Toutes les autres transitions d'état sont sélectionnées et réalisées par le noyau selon des règles bien précises. Une de ces règles est par exemple qu'un processus en



Dominique REVUZ
Mon Feb 2 12:10:31 MET 1998
Une Bug Un mail Merci