174 | | * Le thread avait déjà été élu et donc il avait perdu le processeur et appelé `thread_save()`. En conséqie |
| 174 | * Le thread avait déjà été élu et donc il avait perdu le processeur et il avait appelé `thread_save()`. |
| 175 | * En conséquence, on sortira de `thread_load()` par `thread_save()` et on revient dans `sched_switch()`. |
| 176 | * Pour qu'on ne rentre pas dans une boucle sans fin, la valeur de retour de `thread_save()` après une restauration de contexte est `0` (alors que c'est `1` après une sauvegarde). On teste donc cette valeur de retour de `thread_save()` pour savoir ce qu'on doit faire ensuite. |
| 177 | * On sort ensuite de `sched_switch()` et on revient dans `thread_yield()` (actuellement c'est le seul cas, mais nous verrons d'autres fonctions appelant `sched_switch()`. |
| 178 | * Après, on revient dans un syscall ou dans l'ISR du timer, suivant l'événement qui avait abouti à la perte du processeur par le thread courrant. |
| 179 | |