22.processus Flashcards

1
Q

programme

A

ensemble
d’instructions et de variables dont le
but est d’accomplir une tâche
précise.
* C’est donc le code que l’on écrit et qui
est traduit en langage binaire par le
compilateur

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

processus

A

composé
* du programme;
* et de l’ensemble des ressources
reliées à l’exécution du programme.
Ces ressources incluent:
* un espace réservé en mémoire;
* des fichiers ouverts;
* du temps de CPU

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

On divise le temps du microprocesseur en petits morceaux, des

A

quanta

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

À chaque quantum, une —– est soulevée

A

À chaque quantum, une interruption est soulevée

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

La routine de traitement de l’interruption

A

Sauvegarde le contexte du processus en exécution (PC, CPSR,
registres)
* Sélectionne un autre processus à exécuter grâce à un programme
nommé l’ordonnanceur
* Restaure le contexte de ce nouveau processus (PC, CPSR, registres)
* Reprend l’exécution du processus où il était rendu

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

C’est l’—– qui décide quel processus exécuter à chaque quantum.

A

C’est l’ordonnanceur qui décide quel processus exécuter à chaque quantum.

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

Est-ce qu’un processus « sait » qu’il a été interrompu?

A

Non!
À ses yeux, il ne fait que continuer son exécution
comme s’il était seul sur Terre.

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

peut on faire 2 processus à la fois

A

non on alterne

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

À tout moment, un processus possède

A

un état.

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

Le système d’exploitation (SE) tient une liste de

A

tous les processus à exécuter, ainsi que leur état.

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

le SE stocke cette information dans un

A

Process
Control Block (PCB) pour chaque processus,

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

Process
Control Block (PCB) contient x4

A

son identifiant unique;
* son état;
* ses registres, sa partie de la mémoire et sa pile;
* d’autres informations, comme sa priorité

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

Un nouveau processus peut être démarré par:x3

A

une requête de l’usager (ex: exécution de programme);
* le système d’exploitation;
* ou un autre processus

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

Lorsqu’un processus est démarré, il est tout d’abord examiné
par

A

l’admission de haut niveau (high level scheduler)

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

Celui-ci détermine si l’ordinateur possède

A

les ressources
nécessaires pour exécuter le processus
* Si oui (la majorité du temps), le processus est admis et tombe dans
l’état prêt.
* Sinon, le processus ne peut être démarré.

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

Processus: état « prêt »

A

Le processus est prêt d’être exécuté, mais il ne
peut pas: il est en attente du micro-processeur
* Le micro-processeur est alors occupé à exécuter un
autre processus
* Il reste dans l’état prêt jusqu’à ce que
l’ordonnanceur le sélectionne comme prochain
processus à exécuter.

17
Q

ordonnanceur est

A

Programme (du système d’exploitation) qui
sélectionne le prochain processus à exécuter
* S’exécute périodiquement grâce à des interruptions qui
redonnent le contrôle au système d’exploitation

18
Q

Processus: état « en cours »

A

Le processus contrôle le micro-processeur!
* Il le fait jusqu’à ce que:
* l’ordonnanceur reprenne le contrôle pour pouvoir
exécuter un autre processus
* il revient alors à l’état prêt

19
Q

Processus: état « terminé »

A

Lorsque le processus a complété son exécution,
ou lorsqu’on le ferme volontairement, il devient
dans l’état terminé.

20
Q

L’ordonnancement des processus consiste simplement à
décider quel

A

processus sera exécuté dans le quantum suivant

21
Q

Un algorithme d’ordonnancement a les objectifs suivants x9

A

Assurer l’équité
Maximiser l’exécution
Temps d’exécution min.
Utilisation max du CPU
Utilisation max ressources
Détérioration graduelle (Un système surchargé doit ralentir, pas planter)
Temps d’attente min.
Temps de réponse correct
Prévenir la famine (starvation)( L’exécution d’un processus ne doit pas être reportée indéfiniment.)

22
Q

Ordonnancement: algorithme général en 4 étapes

A
  1. S’il y a un nouveau processus:
    1.1. L’admettre en mémoire;
    1.2. (Tourniquet seulement): placer le processus à la fin de la file d’attente
  2. Choisir le processus parmi ceux admis en mémoire
    selon l’algorithme d’ordonnancement;
  3. Calculer la durée restante du processus choisi;
    3.1. Si le processus choisi est terminé, le retirer de la liste
    des processus en mémoire;
    3.2. (Tourniquet seulement): Sinon, placer le processus à la fin de la file
    d’attente
  4. Passer au quanta suivant
23
Q

algo Premier arrivé, premier servi

A

Le premier processus admis est exécuté jusqu’à sa fin.
Puis, on exécute le suivant.
* Cet algorithme n’est jamais utilisé. Il détruirait l’illusion
d’une exécution simultanée de plusieurs processus.

24
Q

algo plus court d’abord

A

On exécute le processus le
plus court d’abord.
* Avantages: Maximise l’exécution et le temps
d’exécution
* Désavantages: Famine possible, inéquitable

25
Q

Arrivée dynamique des processus
* En pratique, les processus arrivent à différents
moments. Il faut donc recalculer quel processus
sera exécuté en prochain. comment
* Plus court d’abord

A

On maintient une liste des processus, et on sélectionne
le plus court

25
Q

Arrivée dynamique des processus
* En pratique, les processus arrivent à différents
moments. Il faut donc recalculer quel processus
sera exécuté en prochain. comment
* Plus court d’abord

A

On maintient une liste des processus, et on sélectionne
le plus court

26
Q

algo tourniquet

A

exécute les
processus à tour de rôle.
* Avantages: Tous les processus ont du temps de CPU,
très équitable
* Désavantages: Ne maximise pas l’exécution ni le temps
d’exécution

27
Q

Arrivée dynamique des processus
* En pratique, les processus arrivent à différents
moments. Il faut donc recalculer quel processus
sera exécuté en prochain. comment
* tourniquet

A

On maintient une file d’attente.
* Lorsqu’un nouveau processus arrive, on le place à la fin
de la file d’attente

28
Q

notion de priorité

A

On exécute les processus selon leur
priorité.
* Avantages: Temps de réponse correct, temps d’attente
minimum
* Désavantages: Ne maximise pas l’exécution ni le temps
d’exécution, famine possible, le programmeur doit
déclarer des priorités

29
Q

algo tourniquet priorité

A

On exécute tout d’abord
les processus selon leur priorité. Si plusieurs
processus ont la même priorité, on utilise le
tourniquet pour les exécuter en alternance.
* Avantages: Temps de réponse correct, temps d’attente
minimum
* Désavantages: Ne maximise pas l’exécution ni le temps
d’exécution, famine possible, le programmeur doit
déclarer des priorités

30
Q

algo à priorité variable

A

On exécute les processus selon
leur priorité. La priorité d’un processus change
dynamiquement en fonction d’évènements (fin
d’attente, le processus a faim, admission, …).
* Avantages: Temps de réponse correct, temps d’attente
minimum
* Désavantages: Même que l’algorithme de priorité, mais
avec un impact beaucoup moindre

31
Q

file avec tourniquet

A

On exécute
plusieurs fois les processus nouvellement admis,
puis les processus non terminés sont mis dans un
tourniquet.
* Avantages: Tous les processus ont du temps de CPU;
très équitable.
* Désavantages: Même que tourniquet, mais avec un
impact moindre

32
Q

alog plus critique

A

Le processus
devant être exécuté dans les plus brefs délais est
d’abord exécuté.
* Avantages: Garantit l’exécution d’un processus critique
à l’intérieur d’un certain temps.
* Désavantages: Ne maximise pas l’exécution ni le temps
d’exécution, famine possible, le programmeur doit
déclarer des priorités

33
Q

Lorsqu’il est en cours, un processus peut parfois avoir
besoin d’accéder à un périphérique. Les périphériques sont beaucoup plus —– que le microprocesseur,
alors le processus doit —– (longtemps)
que la requête soit terminée avant de ——
l’exécution. Pendant ce temps, le micro-processeur —-

A

Les périphériques sont beaucoup plus lents que le microprocesseur,
alors le processus doit attendre (longtemps)
que la requête soit terminée avant de poursuivre
l’exécution. Pendant ce temps, le micro-processeur ne fait rien!

34
Q

Processus: état « en cours »
* Le processus contrôle le—-!
* Il le fait jusqu’à ce que: x2

A
  • Le processus contrôle le micro-processeur!
  • Il le fait jusqu’à ce que:
  • l’ordonnanceur reprenne le contrôle pour pouvoir
    exécuter un autre processus
  • il revient alors à l’état prêt
  • il demande à utiliser un périphérique (entrée-sortie)
  • il tombe alors dans l’état bloqué
35
Q

Processus: état « bloqué »
Le processus est en —- d’un périphérique
(entrée-sortie)
* Lorsque le périphérique a terminé la requête,x2

A

Le processus est en attente d’un périphérique
(entrée-sortie)
* Lorsque le périphérique a terminé la requête,
* il soulève une interruption pour indiquer au système
d’exploitation qu’il a terminé la requête.
* le système d’exploitation remet alors le processus dans
l’état prêt.