Sistemas Operacionais - Escalonamento
Operacionais
3 - Escalonamento
Prof. Renato Lellis
Escalonamento
Uma vez que há diversos processo na fila de pronto, qual deles selecionar para o estado de execução? o Política de Escalonamento!
Base da gerência do processador
E s ta d o d e
E xe cu çã o
E s ta d o d e
E sp e ra
E sta d o d e
P r o n to
Escalonamento
Funções básicas da política de escalonamento: o Manter a CPU a mais ocupada possível o Balancear o uso da CPU entre os processos o Privilegiar aplicações críticas o Maximizar throughput (vazão) do sistema o Possibilitar tempos de resposta razoáveis para aplicações interativas (SO de tempo real)
Escalonamento
Cada SO possui sua política de escalonamento
Escalonador (scheduler): rotina responsável por implementar a política de escalonamento
Dispatcher: rotina responsável pela troca de contexto depois que o escalonador determina qual processo vai para o estado de execução o Tempo gasto para troca de contexto é chamado de latência do dispatcher
Comportamento é o mesmo tanto para processos quanto para threads no estado de pronto
Escalonamento
Critérios considerados na política de escalonamento: o Utilização da CPU
Desejável maximizar
Abaixo de 30%, carga baixa; acima de 90%, próximo da saturação (atenção!) o Throughput
Número de processos / tempo, desejável maximizar o Tempo de CPU
Tempo do processo no estado de execução durante todo seu processamento
Não é afetado pela política de escalonamento
Escalonamento
Critérios considerados na política de escalonamento: o Tempo de Espera
Tempo total do processo na fila de pronto durante todo seu processamento, desejável minimizá-lo o Tempo de Turnaround
Tempo total do processo (início a fim), desejável minimizá-lo o Tempo de Resposta
Tempo entre uma requisição ao sistema e sua resposta
(p/ex., digitação e saída no monitor)
Muitas vezes limitado pelos dispositivos de E/S
Escalonamento
Escalonamento não preemptivo: o Primeira forma de