Threads Flashcards

1
Q

Qu’est-ce qu’un thread?

A

Chaque thread a un état, une pile, un contexte d’exécution et une mémoire pour les variables locales. Contient une trace, un état et une priorité. Tous les threads d’un processus se partagent les ressources.

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

Quelles sont les 3 composantes d’un thread?

A

Thread control block, pile utilisateur et pile kernel

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

Quels sont les états des threads?

A

En cours d’exécution, prêt ou bloqué

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

Quelles sont les 4 étapes qui peuvent changer l’état d’un thread?

A

Création, blocage, déblocage et terminaison.

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

Quelles sont les deux catégories d’implémentation de threads?

A

Kernel et utilisateur

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

Qu’est-ce qu’un thread de niveau utilisateur?

A

Le kernel ne connait pas l’existence de thread, seule l’application les gère.

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

Quels sont les avantages des threads de niveau utilisateur?

A
  • Pas besoin de privilège de niveau kernel pour switcher de thread
  • Scheduling est décidé par l’application
  • Peut marcher sur n’importe quel OS
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Quels sont les désavantages des threads de niveau utilisateur?

A
  • Un system call bloque non-seulement le thread, mais le processus au complet
  • Ne peut pas faire plusieurs calculs en même temps.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qu’est-ce qu’un thread de niveau Kernel?

A

Tout le thread management est fait par le kernel. Cependant, un API permet de controller le kernel dans l’application.

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

Quels sont les avantages d’un KLT?

A
  • Plusieurs threads sur plusieurs processeurs
  • Peut avoir un thread blocké mais quand même exécuter un autre thread du même processus
  • Les routines du kernel peuvent être multithreadées
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Quels sont les désavantages d’un KLT?

A
  • Besoin d’aller en mode kernel pour changer de thread

- Utilisateur doit tout gérer

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