web-dev-qa-db-fra.com

Temps CPU utilisateur vs temps CPU système?

Pourriez-vous expliquer davantage le "temps CPU utilisateur" et le "temps CPU système"? J'ai beaucoup lu, mais je ne pouvais pas bien le comprendre.

68
user472221

La différence est de savoir si le temps est passé dans l'espace utilisateur ou dans l'espace noyau. Le temps CPU de l'utilisateur est le temps passé sur le processeur exécutant le code de votre programme (ou le code dans les bibliothèques); le temps CPU du système est le temps passé à exécuter du code dans le noyau du système d'exploitation au nom de votre programme.

52
Michael Ekstrand

Le terme "temps processeur utilisateur" peut être un peu trompeur au début. Pour être clair, le temps total (temps réel du CPU) est la combinaison du temps que le CPU passe à effectuer une action pour un programme et du temps que le CPU passe à effectuer des appels système pour le noyau au nom du programme. Lorsqu'un programme parcourt un tableau, il accumule du temps CPU utilisateur. Inversement, lorsqu'un programme exécute un appel système tel que exec ou fork, il accumule du temps CPU système.

20
user3407861

ser CPU Time: durée pendant laquelle le processeur a travaillé sur le programme spécifique.

System CPU Time: durée pendant laquelle le processeur a travaillé sur les fonctions du système d'exploitation connectées à ce programme spécifique.

16
N Randhawa

Basé sur wikipedia :

  • Le temps utilisateur est la durée pendant laquelle le CPU a été occupé à exécuter du code dans l'espace utilisateur.
  • L'heure système est la durée pendant laquelle le CPU a été occupé à exécuter du code dans l'espace noyau. Si cette valeur est signalée pour un thread ou un processus, elle représente la durée pendant laquelle le noyau effectuait un travail au nom du contexte d'exécution, par exemple, après qu'un thread a émis un appel système.
4
keypress