Como a prioridade do processo influencia um processo?

2

Assumindo que lemos a seguinte pergunta: Altere a gentileza (prioridade) de um processo em execução e sabemos sobre permissões raiz e não-raiz:

O que realmente acontece quando um processo em execução (Through renice ) ou um novo processo (Through nice ) obtém sua prioridade alterada para um valor positivo / negativo anteriormente.

  • Isso significa que mais memória é atribuída a ele?
  • A maior capacidade da CPU vai para esse processo em particular?
  • Isso reduz qualquer tempo para recursos para esse processo?

O que acontece quando a prioridade do processo muda?

    
por Luis Alvarado 14.11.2012 / 22:56

1 resposta

3

Em PCs que executam processos recentes de SO parecem executados simultaneamente, mas na verdade estão sendo executados um após o outro. Os processos podem estar em vários estados, simplificados aqui :

  • em execução (atualmente reivindicando tempo de CPU)
  • pronto (pronto para solicitar a CPU para algum trabalho)
  • aguarde (aguardando outros processos por meio de comunicação entre processos ou disco ou rede de E / S semelhantes)
  • sleep ("Eu não preciso do seu tempo agora")

A prioridade de um processo diz ao scheduler para escolher o processo com a prioridade mais alta com um estado pronto para permitir o uso da CPU. Assim, no caso em que vários processos estão no estado pronto, aquele com a maior prioridade obterá a maior parte do tempo. E como o Linux é um kernel preventivo, ele pode colocar processos do estado em execução em espera e permitir que outros processos trabalhem. O tempo que os processos obtêm é dividido em timeslices e o algoritmo para o agendamento real também pode ser selecionado.

Alterar o nível nice não altera nada para o gerenciador de memória até onde eu sei, mas sim, ele influencia o bloqueio de recursos de uma maneira que os processos com prioridade mais alta devem ser concluídos antes.

Eu sugiro que você leia mais sobre este tópico: Wikipedia: Multitarefa preventiva e O'Reilly - Entendendo o Kernel Linux (2000)

E, a propósito, por favor, note que um menor nice nível significa maior prioridade no Linux.

    
por gertvdijk 14.11.2012 / 23:35