Fiche de l’élève

Ordonnancement, cœurs et événements

Trois sections par leçon : prévoir, construire, expliquer. Travaillez sur papier ou dans le laboratoire local. L’application ne demande ni nom, ni compte, ni dossier d’élève.

25. Ordonnancement coopératif

Faites alterner des tâches et distinguez la politique d’exécution des instructions du processeur.

Ouvrir cette leçon →

1. Prévoir et tracer

Avant d’exécuter le programme d’essai, prévoyez sa sortie et tracez les trois premières instructions exécutées. Suivez les registres, les indicateurs ou la mémoire pertinents, selon le besoin. Avancez ensuite pas à pas pour comparer.

LOAD 1
CALL taskA
CALL taskB
HALT
taskA: PRINT
SLEEP 500
RETURN
taskB: LOAD 101
PRINT
RETURN

Ajouter les entrées à la file: Aucune

Initialiser la mémoire: Tous les octets sont initialement nuls

InstructionPC avantPC aprèsR0 avantR0 aprèsÉtat pertinentSortie
       
       
       

2. Construire et vérifier

Lisez un nombre de tours de 0 à 3. Faites commencer le compteur de la tâche A à 0 et celui de B à 100. À chaque tour, appelez A pour augmenter et afficher son compteur, puis B pour augmenter et afficher le sien.

Types d’instructions requis: INPUT, LOOP, CALL, RETURN

Programme de départ

INPUT
COPY R0 R3
LOAD 0 R1
LOAD 100 R2
LOOP R3
CALL taskA
CALL taskB
RETURN
HALT
taskA:
  #
RETURN
taskB:
  #
RETURN

Votre programme et vos notes

3. Expliquer la machine

L’alternance CALL/RETURN équivaut-elle à la préemption matérielle ?