Os processos adormecidos recebem o mesmo tempo de CPU?

10

Alguns processos passam a maior parte de suas "vidas" em um status sleep . Daemons, servidores e ouvinte geral vêm à mente. Eu queria saber se eles recebem o mesmo tempo de CPU nesse estado? Em algo como meu laptop, isso não seria ótimo!

Eu me lembro vagamente do meu curso de sistema operacional de que existem diferentes abordagens para o agendamento. Estou interessado em saber mais sobre minha caixa atual de Linux (Debian).

Como posso saber sobre minhas políticas de agendamento atuais? Posso mudá-las dinamicamente? Com um aplicativo muito userland?

    
por rahmu 19.10.2011 / 02:43

2 respostas

14

Os processos não consomem recursos da CPU enquanto estão dormindo. Eles podem adicionar alguma sobrecarga, já que o Kernel tem que manipulá-los, mas isso é muito insignificante.

No entanto, devido à maneira como a pergunta é redigida, devo mencionar que ao usar o CFS (Completely Fair Scheduler) do Linux, ele tenta dar aos programas maior tempo de CPU em proporção ao tempo que dorme - isto é, se um processo dorme muito, quando é retomado, recebe uma prioridade maior.

Consulte o link para obter uma descrição do CFS.

    
por 19.10.2011 / 03:21
4

Por definição, um processo de suspensão não está sendo executado na cpu, portanto, obviamente, a quantidade de tempo de CPU que ela está usando é zero.

    
por 19.10.2011 / 16:35