Exercice 1 - Architecture matérielle et systèmes… · Bac Numérique et Sciences Informatiques Amérique du Nord 2026 (jour 2)

Thème : Architectures matérielles et systèmes d'exploitation · Tiré du sujet Jour 2 (2026)

Énoncé

Exercice 1 (6 points)

Cet exercice porte sur l’architecture matérielle, les systèmes d’exploitation, et les structures de données linéaires en Python.

Un système d’exploitation permet d’exécuter plusieurs applications à la fois en donnant l’impression qu’elles fonctionnent simultanément. En réalité, le système répartit le temps de calcul du processeur entre les différents processus, de sorte qu’ils s’exécutent chacun à leur tour très rapidement.

Chaque application peut être représentée par un ou plusieurs processus, gérés par le système d’exploitation. Même si un seul processus utilise réellement le processeur à un instant donné, cette alternance rapide donne l’impression que tout s’exécute en même temps. Lorsque le système interrompt un processus pour en exécuter un autre, on parle de préemption.

Partie A

1.

Recopier et compléter le schéma ci-dessous avec les termes suivants: « élu », « prêt », « bloqué », « élection », « blocage », « déblocage ».

On peut imaginer, par exemple, une application de streaming musical qui se compose de trois processus:

le processus P1 gère l'interface utilisateur et interagit avec les composants visibles: listes de morceaux, boutons de lecture-pause, etc.;

le processus P2 assure le téléchargement de la musique et l'écrit dans une mémoire cache locale;

le troisième processus P3, qu'on pourrait appeler lecteur audio, assure le décodage audio et envoie le flux de données au système pour lecture.

Voici une situation de fonctionnement:

l'utilisateur décide de mettre l'application en arrière-plan, cachant ainsi l'interface utilisateur;

le processus P2 attend un accès à la carte WIFI pour recharger des données;

le processus P3 décode de la musique et l'envoie au système.

2.

Indiquer l'état de chacun des trois processus P1, P2 et P3 dans cette situation.

3.

Expliquer, de façon générale, quand est-ce qu'un interblocage de processus peut survenir.

On considère plusieurs ressources dont un processeur graphique (GPU), un microphone (MIC), une caméra (CAM) et un processeur dédié au calcul (CAL). On suppose que chacune de ces ressources ne peut être utilisée que par un seul processus à la fois.

On considère de plus quatre processus nommés P1, P2, P3 et P4. Le tableau suivant récapitule les ressources utilisées par chacun des quatre processus, dans l'ordre où chacun des processus les demande:

P1

P2

P3

P4

demander MIC

demander CAL

libérer CAL

libérer MIC

demander CAM

demander GPU

libérer CAM

libérer GPU

demander CAL

demander MIC

libérer MIC

libérer CAL

demander CAM

libérer CAM

demander CAM

libérer CAM

demander CAL

demander MIC

libérer MIC

libérer CAL

demander GPU

libérer GPU

demander GPU

demander CAL

demander CAM

libérer CAM

libérer CAL

demander MIC

libérer GPU

libérer MIC

4.

Les processus s'exécutent de manière concurrente. Justifier qu'une situation d'interblocage peut se produire.

5.

Expliquer l'intérêt d'utiliser une machine équipée de plusieurs processeurs plutôt qu'une machine équipée d'un seul processeur.

6.

Décrire un avantage et un inconvénient des systèmes sur puces, tels que ceux utilisés dans les smartphones.

Partie B

On s'intéresse à un ordonnanceur de type tourniquet ( round-robin), dans lequel une durée appelée quantum est fixée à 2 ms. Chaque processus, lorsqu'il est défilé de la file d'attente, s'exécute sur le processeur pour une durée au plus égale au quantum:

s'il termine son exécution avant ou à la fin du quantum, un autre processus est défilé de la file d'attente, et celui-ci bénéficie d'un nouveau quantum pour s'exécuter.

s'il n'a pas terminé son exécution, il est mis en queue de la file d'attente.

De plus, d'autres processus peuvent être ajoutés à la file d'attente au fur et à mesure qu'ils arrivent.

On considère quatre processus nommés P1, P2, P3 et P4. Le tableau suivant donne les informations temporelles les concernant.

Processus

Instant d'arrivée

Temps d'exécution total

P1

0 ms

6 ms

P2

1 ms

4 ms

P3

3 ms

5 ms

P4

5 ms

3 ms

7.

Recopier et compléter le chronogramme suivant en indiquant quel processus utilise le processeur à chaque instant, de 0 ms à la fin de l'exécution de tous les processus. À titre d'exemple, on a déjà indiqué sur le chronogramme que le processus P1 s'exécute entre les instants 0 ms et 2 ms. De plus on a indiqué sous l'axe du temps les instants d'arrivée des quatre processus.

Indiquer pour chaque intervalle de temps le nom du processus qui s'exécute (P1, P2, P3 ou P4):

Énoncé: Exercice 1 - Architecture matérielle et systèmes… · Bac Numérique et Sciences Informatiques Amérique du Nord 2026 (jour 2)

Corrigé

Corrigé proposé par AprenAI (non officiel)

1. État de gauche du schéma des états d'un processus

Réponse : prêt

1. État de droite du schéma des états d'un processus

Réponse : élu

1. État du bas du schéma des états d'un processus

Réponse : bloqué

1. Transition du haut (prêt vers élu)

Réponse : élection

1. Transition de droite à bas (élu vers bloqué)

Réponse : blocage

1. Transition du bas vers la gauche (bloqué vers prêt)

Réponse : déblocage

2. État du processus P1 (interface en arrière-plan)

Réponse : bloqué / prêt

2. État du processus P2 (attend un accès WIFI)

Réponse : bloqué

2. État du processus P3 (décode et envoie la musique)

Réponse : élu

3. Expliquer, de façon générale, quand est-ce qu'un interblocage de processus peut survenir.

Réponse : Un interblocage (deadlock) survient lorsque plusieurs processus s'attendent mutuellement de manière circulaire pour obtenir des ressources non partageables détenues par les autres, bloquant ainsi définitivement leur progression.

4. Les processus s'exécutent de manière concurrente. Justifier qu'une situation d'interblocage peut se produire.

Réponse : Considérons P1 et P2 : P1 demande d'abord MIC puis CAL, alors que P2 demande CAL puis MIC. Si P1 obtient MIC et que P2 obtient CAL, P1 se retrouve bloqué en attendant CAL (détenu par P2), et P2 se retrouve bloqué en attendant MIC (détenu par P1). Il y a une attente circulaire entre P1 et P2, créant un interblocage.

Les réponses des 11 questions restantes et l’explication pas à pas sont réservées aux membres Premium. Premium

Résous-le ici : correction automatique, indices et corrigé détaillé.

Exercice 1 - Ordonnancement et interblocage · Amérique du Nord 2024 (jour 1) ›

Plus d’exercices d’Architectures matérielles et systèmes d'exploitation