14.04.2013 Views

Guia do Servidor Linux

Guia do Servidor Linux

Guia do Servidor Linux

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Apêndice A. Fair Scheduler<br />

Introdução e Conceitos<br />

O Fair scheduler é um mo<strong>do</strong> de escalonamento especial que impede um usuário<br />

de monopolizar a CPU e evita que o sistema se torne lento para to<strong>do</strong>s os outros<br />

usuários, através da inicialização de um ou mais processos intensivos na CPU.<br />

Ao invés disto, o Fair Scheduler irá tentar distribuir mais o tempo da CPU, de<br />

uma forma mais ou menos justa entre os usuários; o usuário, então, com uma<br />

grande carga de processos envia<strong>do</strong>s, irá continuar até o fim com seus processos<br />

penaliza<strong>do</strong>s, fazen<strong>do</strong> com que os outros usuários dificilmente notem alguma<br />

coisa.<br />

O objetivo dele não é tentar ser um escalona<strong>do</strong>r totalmente justo ou extensamente<br />

configurável, mas manter o foco em uma baixa saturação, estabilidade, configuração<br />

simples e em ser o mais justo possível.<br />

O Fair scheduler pode ser liga<strong>do</strong> ou desliga<strong>do</strong> enquanto o sistema estiver operan<strong>do</strong>;<br />

de qualquer forma o acréscimo associa<strong>do</strong> por ele será extremamente baixo.<br />

Funcionamento<br />

O escalona<strong>do</strong>r <strong>do</strong> <strong>Linux</strong> funciona dividin<strong>do</strong> o tempo de CPU para cada processo<br />

no sistema, recalculan<strong>do</strong> as prioridades quan<strong>do</strong> cada processo ativo terminar sua<br />

fatia de tempo 1 . Isto significa que um usuário com <strong>do</strong>is processos em execução,<br />

sob o escalona<strong>do</strong>r normal, alocará duas vezes o tempo de CPU que um usuário<br />

com um processo executável terá.<br />

Se a opção Fair scheduler estiver ligada, apenas um <strong>do</strong>s <strong>do</strong>is processos em execução<br />

<strong>do</strong> usuário irá receber uma nova divisão de tempo (ou os múltiplos processos<br />

<strong>do</strong> usuário irão receber divisões de tempo parciais, dependen<strong>do</strong> da situação).<br />

Como não concedemos mais tempo de CPU para um processo que ele possa ter<br />

por causa <strong>do</strong> nice level, ou porque ele ainda tem tempo de CPU de seu último<br />

1. quantum<br />

250

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!