Exercicies système d'exploitation
Exécution de processus en multiprogrammation
On considère un système monoprocesseur dans lequel les processus partagent un disque comme seule ressource (autre que le processeur). Cette ressource n'est accessible qu'en accès exclusif et non requérable, c'est-à-dire qu'une commande disque lancée pour le compte d'un processus se termine normalement avant de pouvoir en lancer une autre. Un processus peut être en exécution, en attente d'entrée-sortie ou en attente du processeur.
A- Expliquer le schéma suivant représentant les états possibles d'un processus et les transitions entre ces états. Expliquer pourquoi certaines transitions ne sont pas possibles.
[pic]
B- En fait l'état bloqué se divise en deux états : attente de la ressource disque et attente de la fin d'exécution de l'opération. Les demandes d'entrées-sorties sont gérées à l'ancienneté, et l'allocation du processeur est faite selon la priorité affectée au processus, et représentée par une valeur entière. Le processus prioritaire est celui qui a la plus grande valeur et si deux processus ont même priorité, c’est le plus ancien dans la file d’attente des processus prêts.
Nous considérons les 4 processus dont le comportement est le suivant (la priorité au démarrage est indiquée entre parenthèses) :
P1 (100) Calcul pendant 40 ms Lecture disque pendant 50 ms Calcul pendant 30 ms Lecture disque pendant 40 ms Calcul pendant 20 ms
P2 (99) Calcul pendant 30 ms Lecture disque pendant 80 ms Calcul pendant 80 ms Lecture disque pendant 20 ms Calcul pendant 10 ms
P3 (98) Calcul pendant 40 ms Lecture disque pendant 40 ms Calcul pendant 10 ms
P4 (97) Calcul pendant 80 ms
B.1- Les 4 processus sont lancés en même temps et gardent leur priorité initiale pendant toute leur exécution. Établir le chronogramme des 4 processus sur le diagramme suivant. Vous noircirez les cases correspondant à l'état du processus, comme cela a été fait pour le début du