Le temps CPU est alloué en tranches de temps discrètes (ticks). Pour un certain nombre de tranches de temps, le CPU est occupé, d'autres fois ce n'est pas le cas (ce qui est représenté par le processus inactif). Dans l'image ci-dessous, le CPU est occupé pour 6 des 10 tranches de CPU. 6/10 = 0,60 = 60% du temps occupé (et il y aurait donc 40% de temps inactif).
Un pourcentage est défini comme "un nombre ou un taux qui est exprimé comme un certain nombre de parties de quelque chose divisé en 100 parties". Donc, dans ce cas, ces parties sont des tranches de temps discrètes et quelque chose est des tranches de temps occupé par rapport aux tranches de temps inactif - le taux de tranches de temps occupé à inactif.
Étant donné que les processeurs fonctionnent en GHz (milliards de cycles par seconde). Le système d'exploitation découpe ce temps en unités plus petites appelées ticks. Ils ne font pas vraiment 1/10 de seconde. Le taux de tick dans Windows est de 10 millions de ticks en une seconde et sous Linux, il est sysconf(_SC_CLK_TCK)
(généralement 100 ticks par seconde).
Dans quelque chose comme top
, les cycles CPU occupés sont ensuite encore décomposés en pourcentages de choses comme le temps utilisateur et le temps système. Sous top
Linux et perfmon sous Windows, vous obtiendrez souvent un affichage qui dépasse 100%, car le total est de 100% * the_number_of_cpu_cores.
Dans un système d'exploitation, c'est le travail du planificateur d'allouer ces précieuses tranches aux processus, c'est donc le planificateur qui le signale.
1
).