Escolar Documentos
Profissional Documentos
Cultura Documentos
• Escalonamento circular.
• Lista de processos
executáveis = estado pronto.
• Intervalo de tempo =
quantum
• Quando acaba o quantum a
CPU sofre a preempção
• Para o escalonamento
circular o que importa é o
tamanho do quantum.
1. Escalonamento por Se o meu chaveamento durar 1ms, e o quantum for de 4ms,
estarei desperdiçando 20% do tempo apenas realizando
CHAVEAMENTO chaveamentos.
CIRCULAR Para melhorar a eficiência da CPU, o meu quantum poderia ser de
(round-Robin) 100ms, ai estarei 1% do tempo realizando chaveamento de
contexto.
Se o meu sistema receber 50 solicitações num curto intervalo de
tempo. Serão colocados os 50 processos na fila para execução.
Se a CPU estiver ociosa o primeiro será executado, mas, o
segundo só será executado quando passarem 100ms, e o último
terá que esperar 5 segundos.
Isso é ruim principalmente se uma das últimas solicitações
precisar de apenas alguns milisegundos para executar toda a sua
ação.
• Um quantum muito curto pode causar muitos chaveamentos e
reduzir a eficiência da CPU, mas um quantum muito longo pode
demorar nas respostas às requisições interativas curtas. Sendo
assim, um quanto em torno de 20ms a 50ms é bastante
razoável.
• A cada processo é atribuída • Para que o processo não
uma prioridade. execute para sempre:
• O processo com prioridade • A cada interrupção de
mais alta é permitido relógio a prioridade do
2. Escalonamento executar. processo pode ser
por PRIORIDADES reduzida.
Prior. Estática Ou
Militares
100 – General
• O processo recebe um
90 – Coronel
quantum máximo, ao
Prioridades 80 – Major final o próximo com
numa 70 – Capitão prioridade mais alta
Universidade 60 – Tenente executa.
Reitor …
Professores
Secretários
Estudantes Prioridade dinâmica, seria atribuir prioridade alta
a um processo I/O-bound.
Um dos primeiros escalonadores por prioridades usava um sistema de
tempo compartilhado do MIT, no IBM 7094. Só que o 7094 só podia
manter 1 processo de cada vez na memória. Sendo assim cada
chaveamento significava, copiar todo o processo da memória para o
disco e buscar um processo do disco para a memória.
• Classes de prioridade.
• Os processos de prioridade
mais alta 1 quantum.
• A classe seguinte recebia 2.
• A próxima classe 4, e assim
por diante.
4. PRÓXIMO PROCESSO MAIS CURTO
(shortest process next)
• Em sistemas em lote é usado a tarefa mais curta primeiro, que resulta no mínimo
tempo de resposta.
Para usarmos em sistemas interativos, podemos:
• Processos interativos seguem o padrão esperar por comando, executar comando,
esperar por comando, executar comando, e assim por diante.
• É possível calcular o tempo médio de cada próximo comando com uma estimativa,
baseada no último tempo de execução deste mesmo comando.
Esta estimativa permite executar o próximo processo mais curto.
• Fazer promessas reais aos usuários:
• Se houverem n usuários conectados você
receberá 1/n de CPU.
• Num sistema monousuário, com n processos em
execução (todos iguais) cada um deve receber
1/n de CPU.
5. ESCALONAMENTO • Para isso o sistema controla a quantidade de CPU
que cada processo recebeu desde que foi criado.
GARANTIDO • A CPU calcula a taxa entre o tempo de CPU
realmente consumido pelo processo e o tempo
de CPU que o processo deve receber.
• Se o processo tem uma taxa 0,5, significa que só
usou metade do tempo que é seu por direito.
• Se o processo tem uma taxa de 2,0 significa que
já usou duas vezes mais do que lhe era
destinado.
A ideia é dar bilhetes de loteria aos processos.
Em todos estes casos, ter a resposta certa, mas tardia, é tão ruim
quanto não ter nada.
Política x Mecanismo
O processo tem uma visão de quais processos filhos são importantes, mas, o
escalonador não aceita nenhuma entrada que venha dos processos do usuário,
sendo assim, raramente faz a melhor escolha.
Um aperfeiçoamento na solução anterior sem impasse ou inanição, seria proteger os comandos após o think,
com um semáforo binário. Antes de pegar os garfos, fazer um down no mutex e depois de pegar fazer um up
no mutex.
Entretanto essa solução permitiria que apenas 1 filósofo comesse por vez, e com 5 garfos dois filósofos
podem comer por vez.
Problemas clássicos de ipc
O jantar dos filósofos
CAPÍTULO 2 :
TANENBAUM, A. S.; SISTEMAS OPERACIONAIS
MODERNOS. 2010. 3 ED. SÃO PAULO:
PEARSON.