explicitamente alocando recursos no linux

1

Como posso alocar explicitamente recursos (da CPU e da memória física) a um lado específico? Rede ou para um processo.

Obrigado

    
por Muahmmad Zeeshan 17.11.2009 / 14:54

3 respostas

2
De modo geral, os processos aproveitarão tanto a largura de banda da CPU e da rede quanto possível, em relação ao restante do sistema. Você não pode, no meu conhecimento, fornecer explicitamente a um processo uma certa quantidade de velocidade da CPU, como acontece com as máquinas virtuais.

O que você pode fazer é ajustar a prioridade de agendamento do processo usando "legal", como mencionou Crankyadmin. De acordo com a escala "legal", os programas executam desde 19 (a menor prioridade) até -20, a prioridade mais alta, e os programas normalmente são executados a 0.

Observe que usuários não-root só podem, por padrão, ajustar seus programas no intervalo de 19 a 0. Apenas o superusuário pode agendar prioridades abaixo de 0 (ajuste este padrão usando ulimit em / etc / profile, mas faça isso apenas se você souber o que está fazendo).

Para executar um novo processo em um nível bom específico, faça

$ nice -n 10 pwd
/home/msimmons

Isso executa o comando em um nível legal de 10. O $ indica que é um usuário comum. Veja o que acontece quando você tenta definir um nível mais alto:

$ nice -n -20 pwd
nice: cannot set niceness: Permission denied

Agora, como root, conseguimos

## nice -n -10 pwd
/root

Para alterar o bom nível de um processo já em execução, use "renice". Então, se eu quisesse que minha sessão do firefox fosse mais rápida (idiotice), eu faria isso:

renice -10 <firefox-PID>

Tenha cuidado ao fazer isso. Toda vez que um processo gera um processo filho, esse processo filho herda o nível bom do processo pai. Isso significa que se o firefox (no meu caso) ficar frenético, o sistema provavelmente irá com ele. É por isso que a prioridade máxima que um usuário pode mudar é 0.

Tenha cuidado.

    
por 17.11.2009 / 15:43
0

ulimits e nice: D

    
por 17.11.2009 / 15:02
0

Os cpusets são um recurso relativamente novo do Linux, ainda não toquei, mas parece interessante. Aqui está alguma ligação:

link

link

    
por 17.11.2009 / 15:28

Tags