Escalonamento de Processos Métodos de escalonamento de processos em Sistemas Operacionais.
Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia...
Transcript of Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia...
Escalonamento de Processos
Escola Superior de Tecnologia e Gestão de BejaCurso de Engenharia Informática
Cadeira de Sistema Operativos
(Adaptado dos slides que acompanham o livro “Operating Systems” de William Stallings)
Engenharia
Informática
Sis
tem
as O
pera
tivo
sObjectivos do Escalonamento
• Tempo de resposta
• Taxa de saída
• Eficiência do processador
Engenharia
Informática
Sis
tem
as O
pera
tivo
sTipos de Escalonamento
Engenharia
Informática
Sis
tem
as O
pera
tivo
sEscalonamento a Longo Prazo
• Determina quais os programas que são admitidos pelo sistema para processamento
• Controla o nível de multiprogramação (mais processos maior o nível de multiprogramação)
• Quanto mais processos, menor a percentagem de tempo de processador atribuída a cada um
Engenharia
Informática
Sis
tem
as O
pera
tivo
sEscalonamento de Médio
Prazo• Parte da função de swapping
• Baseado na necessidade de controlar o nível de multiprogramação (mais swapping mais programas que podem correr maior o nível de multiprogramação)
Engenharia
Informática
Sis
tem
as O
pera
tivo
sEscalonamento de Curto
Prazo• Conhecido com escalonador (scheduler,
dispatcher)
• É executado frequentemente
• Chamado após a ocorrência de certos eventos:– Interrupções do relógio (clock) do sistema– Interrupções de E/S– Chamadas ao sistema– Sinais
Engenharia
Informática
Sis
tem
as O
pera
tivo
sPrioridades
• O escalonador escolherá sempre um processo com uma prioridade maior
• Podem existir várias filas de processos preparados, cada qual associada a um nível de prioridades
• Os processos de prioridade baixa podem nunca correr (starvation)– possibilidade de alteração da prioridade com
base na idade e história de execução de um processo
Engenharia
Informática
Sis
tem
as O
pera
tivo
sModo de Decisão
• Não apreensão– Quando um processo se encontra no estado
correndo, continua neste estado até terminar ou se bloquear num operação de E/S
• Apreensão– O processo que está a correr pode ser interrompido
e colocado na lista de processos preparados
– Permite um melhor serviço pois impede que um processo monopolize o processador por muito tempo
Engenharia
Informática
Sis
tem
as O
pera
tivo
sExemplo de Escalonamento
de Processos
Engenharia
Informática
Sis
tem
as O
pera
tivo
sPrimeiro-Chegar-Primeiro-
Servido(1)
• Cada processo é introduzido na lista Preparados• Quando o processo corrente termina a execução,
o mais antigo na lista Preparados é seleccionado
0 5 10 15 20
1
2
3
4
5
Engenharia
Informática
Sis
tem
as O
pera
tivo
sPrimeiro-Chegar-Primeiro-
Servido(2)• Um processo pequeno pode ter que
esperar muito tempo até ser executado
• Favorece os processos CPU-bound– Os processos com E/S têm de esperar que
os processos CPU-bound terminem
Engenharia
Informática
Sis
tem
as O
pera
tivo
sRound-Robin(1)
• Utiliza apreensão baseada num relógio• É definida uma quantidade de tempo durante a
qual cada processo utiliza o processador
0 5 10 15 20
1
2
3
4
5
Engenharia
Informática
Sis
tem
as O
pera
tivo
sRound-Robin(2)
• Periodicamente é gerada uma interrupção do relógio
• Quando ocorre um interrupção o processo que se encontra a correr é colocado na lista de Preparados– É escolhido o processo preparado que
correu há mais tempo
• Este intervalo de tempo é conhecido como fatia de tempo ou quantum
Engenharia
Informática
Sis
tem
as O
pera
tivo
sFeedback
• Não é necessário saber o tempo de execução de cada processo
• Mecanismo de Prioridades Dinâmicas• Penaliza os processos que tenham corrido
durante mais tempo
0 5 10 15 20
1
2
3
4
5
Engenharia
Informática
Sis
tem
as O
pera
tivo
sEscalonamento Tradicional do
UNIX• Multilevel feedback com round robin em
cada uma das filas de prioridades
• As prioridades são recalculadas uma vez por segundo
• A prioridade de um processo mantém-se numa banda de prioridades
• É utilizado um factor de ajustamento para manter o processo na banda atribuída
Engenharia
Informática
Sis
tem
as O
pera
tivo
sBandas
• Por ordem decrescente de prioridades– Swapper– Controlo dispositivos de E/S orientados
para blocos (e.g. disco)– Manipulação de ficheiros– Controlo dispositivos de E/S orientados
para caracteres (e.g. teclado)– Processos do utilizador