1 / 2 DEVOIR A RENDRE Exercice 1 : Considérez un système d’exploitation qui ord

1 / 2 DEVOIR A RENDRE Exercice 1 : Considérez un système d’exploitation qui ordonnance les processus selon l’algorithme du tourniquet. La file des processus prêts contient des pointeurs vers les entrées de la table des processus (les descripteurs des processus). Supposez que le système d’exploitation est composé de deux unités de contrôle (deux processeurs CPU1 et CPU2) et d’une unité d’E/S. Chaque processeur exécute l’algorithme du tourniquet avec un quantum de trois unités de temps (qt = 3). Tous les processus prêts sont dans une même file d’attente. La commutation de contexte est supposée de durée nulle. Considérez trois processus A, B et C décrits dans le tableau suivant : Processus Instant d’arrivée Temps d’execution A 0 4 unités de CPU, 2 unités E/S, 2 unités de CPU B 2 3 unités de CPU, 4 unités E/S, 2 unités de CPU C 3,5 5 unités de CPU La première ligne signifie que le processus A arrive dans le système à l’instant 0, son exécution nécessite dans l’ordre 4 unités de temps CPU, 2 unités de temps d’E/S et 2 unités de temps CPU. Au départ le processus A est élu par le processeur CPU1. Si plusieurs événements surviennent en même temps, vous supposerez les priorités suivantes : ‐ Le CPU1 a la priorité d’accès à la file des processus prêts par rapport au CPU2. ‐ A la fin d’un quantum, le processus non terminé en cours est suspendu uniquement si la file des processus prêts n’est pas vide. Le traitement réalisé à la fin d’un quantum est plus prioritaire que celui d’une fin d’E/S qui, à son tour, est plus prioritaire que l’arrivée de nouveaux processus dans le système. 1) Donnez les diagrammes de Gantt montrant l’allocation des deux processeurs, de l’unité d’E/S et l’évolution des états des files d’attente (celle des processus prêts et celle des processus en attente de l’unité d’E/S). 2) Calculez le temps moyen de réponse. 2 / 2 Exercice 2 : A l’instant t, deux processus utilisateur P1 et P2 existent dans un système monoprocesseur. Le processus P1 est composé de deux threads. Le processus P2 est composé de trois threads. Les temps nécessaires à leurs exécutions sont résumés dans le tableau suivant : Processus Threads Temps d’exécution P1 T11 1 unité de CPU T12 3 unités de CPU P2 T21 3 unités de CPU T22 2 unités de CPU T23 1 unité de CPU Supposez que le processeur est libre. Donnez les diagrammes de Gantt montrant l’allocation du processeur, pour chacun des cas suivants : 1) Les threads sont supportés par le noyau (threads noyau). Le noyau ordonnance l’exécution des threads selon l’algorithme du tourniquet (Round Robin) avec un quantum de 2 unités. ‐ La file d’attente des threads prêts, à l’instant t, est : T23 T12 T22 T21 T11  ‐ T11 est en tête de file. 2) Les threads sont implémentés entièrement au niveau utilisateur. Le noyau ordonnance l’exécution des processus selon l’algorithme du tourniquet avec un quantum de 2 unités. Les threads sont ordonnancés au niveau utilisateur selon l’algorithme du tourniquet avec un quantum de 1 unité. Supposez que le processeur est libre et que les processus sont passés à l’état prêt dans l’ordre suivant : ‐ P1 puis P2 ‐ Dans P1 : T11 puis T12 ‐ Dans P2 : T21 puis T22 puis T23 Dans tous les cas, le temps de commutation est supposé nul. 3) Calculez, pour chaque cas, le temps de réponse de chaque processus. uploads/Industriel/ devoir-a-rendre 8 .pdf

  • 20
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager