Aller au contenu

Numérique et sciences informatiques (spécialité) · TerminaleBac

Processus et ordonnancement : cours de Terminale NSI

Publié le 7 novembre 2026 · Mis à jour le 7 novembre 2026 · Signaler une erreur

L'essentiel

  • Un ordonnanceur (scheduler), composant du noyau, choisit l'ordre d'exécution des processus sur les processeurs. 4
  • Un processus change d'état au fil de sa vie : nouveau, prêt, exécutant, bloqué, terminé. Chaque changement peut déclencher une décision de l'ordonnanceur. 3
  • Quand le processus élu n'est plus le même, le système effectue un changement de contexte : il sauvegarde l'état de l'ancien (registres, PCB) et restaure celui du nouveau. 4
  • La préemption consiste à retirer le processeur à un processus qui ne l'avait pas rendu de lui-même. 3
  • Ne confonds pas l'ordonnancement des processus par le noyau avec la planification de traitements (cron) et l'ordonnancement de travaux. 5

Introduction : pourquoi faut-il ordonnancer ?

Quand tu ouvres ton navigateur, que de la musique joue et qu'un éditeur de code est ouvert, tu as l'impression que tout tourne en même temps. En réalité, le nombre de programmes en cours dépasse presque toujours le nombre de processeurs disponibles. 4 Quelqu'un doit donc décider, à chaque instant, qui travaille et qui attend.

Ce « quelqu'un » est une partie du système d'exploitation : l'ordonnanceur. Dans ce cours, tu vas comprendre :

  • ce qu'est un processus du point de vue du système, et par quels états il passe ;
  • ce que fait l'ordonnanceur et à quels moments il intervient ;
  • ce que coûte un changement de processus (le changement de contexte) ;
  • ce que signifie préemptif ou non, et comment on compare des politiques d'ordonnancement ;
  • comment ne pas confondre avec la planification de tâches du type cron.

Tu as déjà vu les systèmes sur puce : ils regroupent plusieurs composants sur une même puce. Ici, on regarde le logiciel qui fait vivre ces ressources, en particulier la plus précieuse de toutes, le processeur.

1. Le problème : plus de processus que de processeurs

Un processus a besoin du processeur pour effectuer ses calculs, et il le libère par exemple lorsqu'une interruption survient. 4 Beaucoup de processeurs anciens ne savent traiter qu'une seule chose à la fois. 4 Avec un seul processeur, la seule façon de faire croire que plusieurs programmes avancent ensemble est de les faire passer à tour de rôle, très vite.

Le rôle de l'ordonnanceur est de permettre à tous les processus de finir par s'exécuter, tout en tirant le meilleur parti du processeur pour l'utilisateur. 4

Avec plusieurs processeurs, le problème change de forme : il faut aussi choisir quel processeur accueille quel processus. Cette idée porte le nom d'affinité, et elle compte pour ne pas dégrader les performances. 4 Les processeurs multicœurs et l'hyperthreading rendent le sujet encore plus délicat. 4 Au programme de Terminale, on raisonne surtout sur un seul processeur, car cela suffit à comprendre les principes.

2. Les états d'un processus

Un processus ne passe pas toute sa vie à calculer. Il peut attendre une donnée du disque, une frappe au clavier, un message réseau. Pour s'y retrouver, on décrit sa vie par des états, et par les transitions qui le font passer de l'un à l'autre.

Les événements qui obligent l'ordonnanceur à prendre une décision se repèrent justement sur ces transitions. On en trouve notamment trois :

  1. un processus apparaît (il est nouveau) ou il se termine ; 3
  2. le processus qui s'exécute devient bloqué, parce qu'il attend quelque chose ; 3
  3. un processus passe de l'état d'attente à l'état prêt. 3
Les états d'un processus et leur signification
ÉtatSignification
NouveauLe processus vient d'être créé
PrêtIl attend que le processeur lui soit attribué
ExécutantLe processeur travaille pour lui
BloquéIl attend un événement avant de continuer
TerminéIl a fini son travail
Les états d'un processus et leur signification · Les états sont ceux qui apparaissent dans la description du cycle de vie d'un processus.

3. Le rôle de l'ordonnanceur et le changement de contexte

Pour que chaque tâche s'exécute sans avoir à se soucier des autres, le noyau pratique des commutations de contexte. Elles servent aussi à respecter les contraintes imposées au système, par exemple des contraintes de temps dans un système d'exploitation temps réel. 4

Concrètement, le système appelle à intervalles réguliers une procédure d'ordonnancement, qui élit le prochain processus à exécuter. 4

Quand le tour du processus sauvegardé revient, le système restaure son PCB. Le processus reprend alors exactement là où il s'était arrêté. 4 De son point de vue, rien ne s'est passé : il n'a pas « senti » l'interruption.

Les étapes d'un changement de contexteQuatre étapes successives : élection d'un processus, sauvegarde de l'ancien contexte, restauration du nouveau, reprise de l'exécution.1ÉlectionL'ordonnanceur choisit le prochain processus.2SauvegardeLes registres de l'ancien sont rangés dans son PCB.3RestaurationLe PCB du processus élu est rechargé.4RepriseLe processus repart là où il s'était arrêté.
  1. ÉlectionL'ordonnanceur choisit le prochain processus.
  2. SauvegardeLes registres de l'ancien sont rangés dans son PCB.
  3. RestaurationLe PCB du processus élu est rechargé.
  4. RepriseLe processus repart là où il s'était arrêté.
Les étapes d'un changement de contexte

4. Préemption et grandes familles d'algorithmes

Selon que l'ordonnanceur peut ou non retirer le processeur de force, on parle d'ordonnancement préemptif ou non préemptif. Dans un système non préemptif, un processus qui a obtenu le processeur le garde jusqu'à ce qu'il se bloque ou qu'il se termine. Dans un système préemptif, le noyau peut interrompre un processus qui s'exécute, par exemple à intervalles réguliers, pour donner la main à un autre.

Le choix de l'algorithme d'ordonnancement détermine le comportement global du système. 4 On distingue deux grandes classes d'ordonnancement : le temps partagé et le temps réel. 4 Avant de les voir, commençons par la politique la plus simple.

La politique la plus intuitive est celle de la file d'attente : le processus qui est en tête de file utilise la ressource en premier. 3 On l'appelle souvent FIFO (first in, first out, premier arrivé, premier servi). Elle est simple à programmer et équitable dans l'ordre d'arrivée, mais un long calcul placé en tête fait patienter tous les autres. Tu le vérifieras dans l'exemple chiffré plus bas.

L'ordonnancement en temps partagé équipe la plupart des ordinateurs classiques. 4 Un exemple : l'ordonnancement dit « decay », celui qui est utilisé par défaut sous Unix. Il repose sur des priorités adaptatives et favorise les tâches interactives, de façon que leur temps de réponse reste bon. 4 Une sous-famille, les ordonnanceurs « proportional share », vise plutôt les stations de calcul et gère les ressources de façon rigoureuse ; on peut citer « lottery » et « stride ». 4

Dans un système temps réel, certaines tâches ont des contraintes de temps strictes. 4 On dit qu'un ordonnanceur temps réel est optimal pour un ensemble de tâches s'il trouve une solution chaque fois qu'il en existe une. S'il échoue, aucun autre ordonnanceur n'aurait réussi. 4

5. Méthode : comparer des politiques avec un diagramme de Gantt

Pour comparer deux politiques, on représente l'occupation du processeur sur une ligne de temps : c'est un diagramme de Gantt. Chaque case indique quel processus occupe le processeur pendant quelle durée. On en déduit des grandeurs mesurables.

Dans les exemples qui suivent, les durées sont exprimées en unités de temps (u.t.) et on suppose que tous les processus sont prêts à l'instant 0.

6. Ordonnancement des processus, planification et ordonnancement de travaux

Le mot « ordonnancement » apparaît dans d'autres contextes, et il est facile de tout mélanger. Jusqu'ici, nous avons étudié l'ordonnanceur du noyau, qui partage le processeur entre des processus pendant quelques millisecondes à la fois. Il existe un autre niveau, celui du lancement automatique de traitements sur des machines, souvent appelés batch. 5

L'ordonnancement de travaux consiste à automatiser le déclenchement de traitements sur un ou plusieurs composants d'un système d'information, à l'aide de progiciels spécialisés. 5 Ces outils combinent la théorie de l'ordonnancement avec des techniques informatiques : files de traitements, gestion de fichiers, équilibrage de charge. 5 Parmi leurs buts, on trouve la réduction des interventions humaines dans les chaînes de production, et la possibilité de relier des processus et des événements par des dépendances. 5

Deux sens du mot « ordonnancement »
CritèreOrdonnanceur du noyauOrdonnancement de travaux
Objet géréDes processusDes traitements (batch)
Ressource partagéeLe processeurDes machines du système d'information
PrincipeÉlire le prochain processusEnchaîner un traitement après un autre
ExempleScheduler du noyauLancement automatisé de sauvegardes
Deux sens du mot « ordonnancement »

7. Synthèse, pièges et suite du programme

Exercices corrigés

Exercice 1 Temps d'attente moyen avec une file d'attente

★☆☆Environ 10 min

Trois processus P1, P2 et P3 sont prêts à l'instant 0 et arrivent dans cet ordre. Leurs durées d'exécution sont de 4, 2 et 6 unités de temps (u.t.). L'ordonnanceur applique la politique de la file d'attente (premier arrivé, premier servi), sans préemption, et on néglige le coût des changements de contexte.

  1. Dessine le diagramme de Gantt.
  2. Donne le temps d'attente de chaque processus.
  3. Calcule le temps d'attente moyen, arrondi au centième.
Indice 1

Le temps d'attente d'un processus est la date à laquelle il commence, puisque tout est prêt à l'instant 0.

Indice 2

Additionne les durées des processus passés avant lui.

Voir la correction pas à pas
  1. Diagramme de Gantt : P1 occupe l'intervalle 0–4, P2 l'intervalle 4–6, P3 l'intervalle 6–12.

  2. Temps d'attente de P1 : il démarre à l'instant 0, donc 0 u.t.

  3. Temps d'attente de P2 : il démarre à l'instant 4, donc 4 u.t.

  4. Temps d'attente de P3 : il démarre à l'instant 6, donc 6 u.t.

  5. Moyenne : (0 + 4 + 6) / 3 = 10 / 3, soit environ 3,33 u.t.

Le temps d'attente moyen est d'environ 3,33 u.t. Le processus le plus long, placé en dernier, ne pénalise personne ici. S'il avait été placé en tête, les deux autres auraient attendu bien plus.

Exercice 2 Compter les changements de contexte

★★☆Environ 12 min

Deux processus Q1 et Q2 sont prêts à l'instant 0. Q1 a besoin de 6 u.t. de calcul et Q2 de 4 u.t. L'ordonnanceur est préemptif : il donne le processeur par tranches de 2 u.t., en alternant Q1 puis Q2 tant que chacun a du travail, en commençant par Q1. On ne compte pas le lancement initial de Q1 comme un changement de contexte.

  1. Écris la suite des tranches.
  2. À quelle date Q2 se termine-t-il ?
  3. Combien y a-t-il de changements de contexte au total ?
Indice 1

Divise la durée de chaque processus par la taille d'une tranche pour savoir combien de tranches il lui faut.

Indice 2

Un changement de contexte a lieu à chaque frontière où le processus change entre deux tranches consécutives.

Voir la correction pas à pas
  1. Q1 a besoin de 6 / 2 = 3 tranches, et Q2 de 4 / 2 = 2 tranches, soit 5 tranches en tout.

  2. Suite des tranches : Q1, Q2, Q1, Q2, Q1, sur les intervalles 0–2, 2–4, 4–6, 6–8, 8–10.

  3. Q2 effectue sa deuxième et dernière tranche de 6 à 8 : il se termine à la date 8 u.t.

  4. Entre deux tranches consécutives, le processus change à chaque fois : 5 tranches donnent 5 − 1 = 4 frontières, donc 4 changements de contexte.

  5. Vérification : Q1, Q2, Q1, Q2, Q1 contient bien 4 alternances.

Q2 se termine à la date 8 u.t. et le système effectue 4 changements de contexte. Chacun correspond à une sauvegarde puis à une restauration de PCB : plus les tranches sont courtes, plus ce coût augmente.

Quiz

7 questions · correction immédiate · ton score reste sur ton appareil.

  1. Quel est le rôle principal de l'ordonnanceur d'un système d'exploitation ?

  2. Qu'appelle-t-on la préemption ?

  3. Un changement de contexte consiste à sauvegarder l'état de l'ancien processus (registres, PCB) puis à restaurer celui du processus élu.

  4. Parmi ces événements, lesquels obligent l'ordonnanceur à prendre une décision ? (plusieurs réponses)

    Plusieurs réponses possibles.

  5. Trois processus prêts à l'instant 0 durent 4, 2 et 6 u.t. et sont servis dans cet ordre par une file d'attente sans préemption. Quel est le temps d'attente moyen, en u.t. (arrondi au centième) ?

  6. Quelle affirmation distingue correctement la planification de l'ordonnancement de travaux ?

  7. Un processus à l'état « bloqué » peut passer directement à l'état « exécutant » dès que le processeur est libre.

Les questions qu'on se pose

À quoi sert l'ordonnancement dans la vie de tous les jours ?

Il te permet de faire tourner plusieurs applications sur la même machine sans que l'une monopolise le processeur. Comme les processus sont souvent plus nombreux que les processeurs, il faut un composant qui répartisse le temps de calcul. 4 Sans lui, un seul programme pourrait bloquer tous les autres.

Quelle différence entre un processus prêt et un processus bloqué ?

Un processus prêt a tout ce qu'il lui faut sauf le processeur : il attend d'être élu. Un processus bloqué attend un événement (par exemple une donnée) et ne peut pas avancer tant qu'il n'a pas eu lieu. Quand l'attente se termine, il devient prêt. 3

Un changement de contexte, est-ce du temps perdu ?

En partie. Pendant la sauvegarde et la restauration du contexte, aucun calcul utile du processus n'avance : c'est un coût de gestion. Mais ce coût est le prix à payer pour partager le processeur et garder un système réactif. L'ordonnanceur cherche un équilibre entre trop de changements et pas assez.

Quelle est la différence entre l'ordonnanceur du noyau et cron ?

L'ordonnanceur du noyau décide quel processus utilise le processeur à chaque instant. La commande cron, elle, sert à lancer des traitements à des heures prévues : c'est de la planification. 5 Le mot anglais scheduler désigne les deux, ce qui entretient la confusion. 5

Que faut-il savoir faire à l'épreuve de NSI sur ce chapitre ?

Les sujets associent régulièrement processus et ordonnancement à d'autres parties du programme : des exercices peuvent combiner par exemple commandes système, processus et routage. 2 Entraîne-toi donc à lire un tableau de processus, à dessiner un diagramme de Gantt, à calculer des temps d'attente et à expliquer avec précision les états et le changement de contexte.

Sources

Programme visé : Programmes et ressources en numérique et sciences informatiques - Voie générale (Terminale spécialité NSI) · Éduscol / Ministère de l'Éducation Nationale

  1. Programmes et ressources en numérique et sciences informatiques - Voie générale (Terminale spécialité NSI), Éduscol / Ministère de l'Éducation Nationale. Consulté le 7 novembre 2026.
  2. Ressources NSI Terminale — Gestion des processus et ordonnancement, Académie de Lyon. Consulté le 7 novembre 2026.
  3. Cours système d'exploitation et gestion des processus, Université de La Rochelle. Consulté le 7 novembre 2026.
  4. Ordonnancement (informatique), Wikipédia. Consulté le 7 novembre 2026.
  5. Ordonnancement de travaux informatiques, Wikipédia. Consulté le 7 novembre 2026.

Les numéros dans le texte renvoient à ces sources. Une source qui ne dit pas ce qu'on lui fait dire ? Signale-le.

Signaler une erreur sur cette page

Je suis en…

Primaire

  • CP Bientôt
  • CE1 Bientôt
  • CE2 Bientôt
  • CM1 Bientôt
  • CM2 Bientôt

Collège

Lycée

Supérieur

  • BTS Bientôt
  • BUT Bientôt
  • Licence Bientôt
  • Prépas Bientôt

Sur cette page