Les processus en veille ont-ils le même temps processeur?


11

Certains processus passent la majeure partie de leur «vie» dans un sleepstatut. Les démons, les serveurs et l'auditeur général viennent à l'esprit. Je me demandais s'ils obtiennent le même temps CPU dans cet état? Sur quelque chose comme mon ordinateur portable, ce ne serait pas très optimal!

Je me souviens vaguement de mon cours sur le système d'exploitation qu'il existe différentes approches de planification. Je souhaite en savoir plus sur ma boîte Linux (Debian) actuelle.

Comment puis-je connaître mes politiques de planification actuelles? Puis-je les changer dynamiquement? Avec une jolie application utilisateur?

Réponses:


15

Les processus ne consomment pas de ressources CPU pendant leur sommeil. Ils peuvent ajouter des frais généraux puisque le noyau doit les jongler, mais c'est très insignifiant.

Cependant, en raison de la façon dont la question est formulée, je dois mentionner que lors de l'utilisation du CFS (Completely Fair Scheduler) de Linux, il tente de donner aux programmes une augmentation du temps CPU proportionnelle au temps de sommeil - c'est-à-dire, si un processus dort beaucoup , lorsqu'elle reprend, elle obtient une priorité plus élevée.

Voir http://www.ibm.com/developerworks/linux/library/l-completely-fair-scheduler/ pour une description de CFS.


2
Je veux voter pour cette réponse, mais votre score actuel de représentant (6 666) est trop joli pour changer. Ah bien, je le fais quand même ...
rahmu

2
@rahmu noooo! Mes belles six droites! Je vais devoir aller à sept maintenant.
Shawn J. Goff,

4

Par définition, un processus de veille ne s'exécute pas sur le processeur, donc la quantité de temps processeur qu'il utilise est évidemment nulle.


Si tel est le cas, comment la machine sait-elle que le temps de veille est terminé et qu'elle doit redémarrer l'exécution?
Dave Goldsmith
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.