Comment le système d'exploitation répartit-il l'exécution de deux processus lancés sur un même cœur de processeur?
sobes.tech IA
Réponse de l'IA
Le système d'exploitation utilise un ordonnanceur (scheduler) pour répartir le temps CPU entre plusieurs processus, même s'il n'a qu'un seul cœur.
Le principe de base est le multitâche avec partage du temps (time slicing). Les processus reçoivent un quantum de temps (time slice), pendant lequel ils s'exécutent. À la fin du quantum, l'ordonnanceur met en pause le processus en cours et en passe un autre.
Cela se produit très rapidement (millisecondes), créant une illusion d'exécution simultanée.
Dans Go, en plus du système d'exploitation, il existe un ordonnanceur propre aux goroutines, qui répartit l'exécution de threads légers (goroutines) à l'intérieur d'un ou plusieurs threads système, mais au niveau des processus, c'est déjà une tâche du système d'exploitation.