Gestion des processus et des ressources par un système d'exploitation

Un processus est un programme en cours d'exécution par un ordinateur.

Problème : à un moment donné, un ordinateur possède souvent de nombreux processus et peu de ressources matérielles (mémoire, processeurs, mais aussi imprimante, écran et autres dispositifs d'entrée/sortie).

Donc plusieurs processus peuvent tenter d'accéder en même temps à une même ressource, sans que cela soit possible. Comment faire ?

Le cours

Le système d'exploitation

Ordonnancement des processus

Les interblocages

Des exercices de bac écrit

Sujets

  1. Exercice 4 de 22-NSIJ1AS1
  2. Exercice 2 de 21-NSIJ2ME2
  3. Exercice 2 de 23-NSIJ1PO1 (voir correction de la question 2 plus bas)
  4. Exercice 3 de 23-NSIJ2PO1
  5. Exercice 1 de 24-NSIJ1AN1 (voir correction de la partie programmation plus bas)

Correction question 2 de Ex2-23NSIJ1PO1

Correction de Ex1-24NSIJ1AN1

Comment coder la classe Processus (qui n'était pas demandée dans le sujet) :

La classe File avec modification demandée à la question 3 :

La classe Ordonnanceur avec les modifications demandées par la question 5 :

Une solution possible de la question 6 sous forme itérative (c'est-à-dire avec boucle). Les classes doivent être déclarées auparavant, elles sont cachées ici pour faciliter la lecture.

(37 lignes masquées)

Une solution possible de la question 6 avec une fonction récursive plutôt qu'une boucle. Les classes doivent être déclarées auparavant, elles sont cachées ici pour faciliter la lecture.

(37 lignes masquées)