Partage du temps et ordonnancement Flashcards

1
Q

Quelle est la différence entre multitâche et multitraitement/multiprocessing ?

A

Multitâche = plusieurs processus sur un CPU, multitraitement = plusieurs CPU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Qu’est-ce que le degré de multiprogrammation ?

A

Nombre de processus chargés en mémoire

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Quelle est la différence entre attente active et attente passive ?

A

Active (polling) = gaspillage CPU
Passive = libère le CPU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Qu’est-ce qu’une commutation de contexte ?

A

Changement de processus actif sur le CPU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quels sont les composants d’un contexte de processus ?

A
  • Registres CPU
  • État
  • Mémoire
  • Files d’attente
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qu’est-ce que le PCB (Process Control Block)

A

Une structure de données du noyau qui représente un processus et son état d’exécution.
Elle contient le PID, fichier exécutable, permissions, mais aussi un TCB

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Qu’est-ce que le TCB (Thread Control Block)

A

Une structure de données du noyau qui représente un VCPU = contexte d’exécution : elle contient une fonction copie du contenu du CPU

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qu’est-ce que la dispatch latency ?

A

Temps perdu à changer de processus

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Quels sont les 5 états d’un processus ?

A
  • New
  • Ready
  • Running
  • Blocked
  • Terminated
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Dans quel état est un processus qui attend un événement ?

A

Blocked

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Dans quel état est un processus en attente d’exécution ?

A

Ready

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Quelles sont les principales files d’attente des processus?

A
  • Ready Queue
  • Disk Queue
  • Sleeping Queue
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Quelle est la différence entre un processus CPU-bound et I/O-bound ?

A

CPU-bound = beaucoup de calculs, I/O-bound = beaucoup d’attente E/S

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Pourquoi un OS favorise-t-il les processus I/O-bound ?

A

Pour éviter que le CPU reste inactif

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Pourquoi un processus I/O-bound passe-t-il souvent en état bloqué ?

A

Il attend les réponses des périphériques

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Qu’est-ce que l’ordonnancement en OS ?

A

Décider quel processus exécuter et quand

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Quels sont les deux types d’ordonnancement ?

A
  • Préemptif
  • Non-préemptif
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Quelle est la différence entre ordonnancement préemptif et non-préemptif ?

A

Préemptif = le noyau peut reprendre le CPU
Non-préemptif = le processus décide

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Quelles sont les décisions prises par un ordonnanceur ?

A
  • Quel processus exécuter
  • Pour combien de temps
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Qu’est-ce que le quantum en ordonnancement ?

A

Durée maximale d’exécution avant préemption

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Quel est le compromis entre durée du quantum et latence du dispatcher ?

A

Trop court = surcoût
trop long = manque de réactivité

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Qu’est-ce que l’algorithme First Come First Served (FCFS) ?

A

Exécution dans l’ordre d’arrivée (FIFO)
On choisit la tâche qui est arrivée le plus tôt dans la ready queue.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Quel est l’inconvénient du FCFS ?

A

Effet de convoi (convoy effect) : les petites tâches risquent d’être désavantagées (effet d’accumulation)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

Qu’est-ce que la famine (starvation) en ordonnancement ?

A

Un processus prêt se retrouve à attendre indéfiniment avant de pouvoir être exécuté

25
Q

Quel algorithme réduit la famine en préemptant les tâches longues ?

A

Round Robin

26
Q

Qu’est-ce que l’algorithme Shortest Job First (SJF) ?

A

Exécute le processus le plus court en premier

27
Q

Quel est le problème principal de SJF ?

A

La famine des tâches longues

28
Q

Qu’est-ce que l’algorithme Shortest Remaining Time First (SRTF) ?

A

Variante préemptive de SJF : chaque

29
Q

Quel est l’inconvénient du SRTF ?

A

La famine est toujours possible

30
Q

Qu’est-ce que l’algorithme Round Robin (RR) ?

A

Exécution de chaque processus en tours de rôle avec quantum, préemption lorsqu’une tâche dépasse son quantum

31
Q

Comment choisir la bonne valeur du quantum en Round Robin ?

A

Trop court = surcoût en performance
Trop long = manque de réactivité

32
Q

Qu’est-ce que l’ordonnancement à priorités ?

A

C’est dans la vraie vie : exécuter les processus avec la priorité la plus haute, on maintient plusieurs ready queue distinctes, et chaque file applique une politique différente

33
Q

Comment éviter la famine en ordonnancement à priorités ?

A

Augmenter progressivement la priorité d’un processus en attente

34
Q

Qu’est-ce que le Multi-Level Feedback Queue (MLFQ) ?

A

Ordonnancement dynamique avec plusieurs files et ajustement des priorités

35
Q

Quels sont les critères d’évaluation d’un ordonnanceur ?

A
  • CPU Utilization
  • Throughput
  • Turnaround Time
  • Waiting Time
  • Response Time
36
Q

Qu’est-ce que le Turnaround Time ?

A

Temps entre l’arrivée et la fin d’un processus

37
Q

Qu’est-ce que le Waiting Time ?

A

Temps total passé dans la Ready Queue

38
Q

Qu’est-ce que le Response Time ?

A

Temps entre l’arrivée et la première exécution

39
Q

Quelle loi empirique explique l’intérêt de la multiprogrammation ?

A

Alternance entre CPU bursts et I/O bursts

40
Q

Que dit la loi empirique sur les processus en OS ?

A

Ils sont soit plutôt CPU-bound, soit plutôt I/O-bound

41
Q

Pourquoi un bon ordonnanceur doit-il connaître la durée des bursts CPU ?

A

Pour mieux prévoir l’exécution des processus

42
Q

Quel est l’impact d’un kernel tick sur l’ordonnancement ?

A

Définit la fréquence des interruptions pour le scheduling

43
Q

Qu’est-ce qu’un ordonnanceur temps réel ?

A

Un ordonnanceur avec des priorités fixes et des contraintes strictes

44
Q

Qu’est-ce que la Ready Queue (ou Run Queue) ?

A

Les PCB des processus prêts

45
Q

Quel est le rôle du scheduler ?

A

Choisir un PCB dans la Ready Queue

46
Q

Que signifie qu’un processus est compute-bound ou I/O-bound ?

A

Cela signifie que sa performance dépend beaucoup de la vitesse de calcul du CPU/de la vitesse des E/S

47
Q

L’ordonnancement de FCFS est-il préemptif ou non ?

A

Non-préemptif : de plus, aucun risque de famine

48
Q

Contexte d’exécution

A

Toutes les informations dont a besoin un processus pour s’exécuter

49
Q

Dispatcher

A

Composant logiciel chargé de faire le context switch, en faisant sauvegarde et restauration

50
Q

Scheduler

A

Composant logiciel qui choisi vers quel processeur on saute en sortant du noyau

51
Q

Ordonnancement non-préemptif (=coopératif)

A

Les applications rendent explicitement la main au noyau, via les appels système bloquants

52
Q

Ordonnancement préemptif

A

Permet au noyau de garder le contrôle de la machine : (exemple : un processus n’a rien demandé, mais qu’on lui prend le CPU pour donner à quelqu’un d’autre. En d’autres termes, l’ordonnanceur retire de force le CPU à un processus et le remet dans la Ready Queue).

53
Q

À quel moment on a une situation de famine ?

A

Ordonnanceur non-préemptif + tâche infinie
Ordonnanceur préemptif + malchance

54
Q

Préemption

A

Le noyau reprend la main à une tâche qui n’était pas prête à rendre la main et remet donc le processus dans la Ready Queue

55
Q

La famine est possible pour les stratégies…

A

SJF et SRTF

56
Q

RR est une variante…

A

préemptif de FCFS

57
Q

SRTF est une variante…

A

préemptive de SJF

58
Q

Appel bloquant

A

Lorsque l’on est sur un processus P1, après un syscall dit bloquant, le scheduler rend la main à un autre processus P2 ≠ P1 (ex : sleep, wait, write, read)

59
Q

Les mécanismes implémentés dans le noyau sont

A

ISR, les syscall, le context switch, l’ordonnanceur et autres