====== Exercice : Gestion de processus ====== Il s'agit de l'exercice 2 de ce {{ .:spe-numerique-informatique-2021-metro-cand-libre-2-sujet-officiel.pdf |sujet}}. //Cet exercice porte sur la gestion des processus et des ressources par un système d'exploitation.// {{ .:annexe_processus.pdf |Document annexe à imprimer}} === Question 1 === Les états possibles d'un processus sont : **prêt**, **élu**, **terminé** et **bloqué**. - Expliquer à quoi correspond l’état élu. - Proposer un schéma illustrant les passages entre les différents états. === Question 2 === On suppose que quatre processus C1, C2, C3 et C4 sont créés sur un ordinateur, et qu'aucun autre processus n'est lancé sur celui-ci, ni préalablement ni pendant l'exécution des quatre processus. L'ordonnanceur, pour exécuter les différents processus prêts, les place dans une structure de données de type **file**. Un processus prêt est enfilé et un processus élu est défilé. - Parmi les propositions suivantes, recopier celle qui décrit le fonctionnement des entrées/sorties dans une file : * Premier entré, dernier sorti * Premier entré, premier sorti * Dernier entré, premier sorti - On suppose que les quatre processus arrivent dans la file et y sont placés dans l'ordre C1, C2, C3 et C4. Compléter la frise avec les états des processus C1 , C3 et C4 sachant que : * Les temps d’exécution totaux de C1, C2, C3 et C4 sont respectivement 100 ms, 150 ms, 80 ms et 60 ms. * Après 40 ms d'exécution, le processus C1 demande une opération d’écriture disque, opération qui dure 200 ms. Pendant cette opération d’écriture, le processus C1 passe à l’état bloqué. * Après 20 ms d'exécution, le processus C3 demande une opération d'écriture disque, opération qui dure 10 ms. Pendant cette opération d’écriture, le processus C3 passe à l'état bloqué. * Sur la frise chronologique donnée en annexe (à rendre avec la copie), les états du processus C2 sont donnés. === Question 3 === On trouvera ci- dessous deux programmes rédigés en pseudo-code. Verrouiller un fichier signifie que le programme demande un accès exclusif au fichier et l’obtient si le fichier est disponible. **Programme 1** Verrouiller fichier_1\\ Calculs sur fichier_1\\ Verrouiller fichier_2\\ Calculs sur fichier_1\\ Calculs sur fichier_2\\ Calculs sur fichier_1\\ Déverrouiller fichier_2\\ Déverrouiller fichier_1 **Programme 2** Verrouiller fichier_2\\ Verrouiller fichier_1\\ Calculs sur fichier_1\\ Calculs sur fichier_2\\ Déverrouiller fichier_1\\ Déverrouiller fichier_2\\ - En supposant que les processus correspondant à ces programmes s'exécutent simultanément (exécution concurrente), expliquer le problème qui peut être rencontré. - Proposer une modification du programme 2 permettant d’éviter ce problème.