Escolar Documentos
Profissional Documentos
Cultura Documentos
SISTEMAS OPERACIONAIS
Processos e Escalonamento
Contextualizando
Na aula passada:
Processos
Aula de hoje:
Processos e Escalonamento
O que é Escalonador?
A troca de processos é feita pelo Escalonador de
Processos.
Escalonador é o processo que escolhe qual será o
próximo processo a ser executado.
2) Não preemptivo:
a) Permite que o processo sendo executado continue
executando.
Categorias do Escalonador
1) Condições de parada do Não Preemptivo:
I) termine de executar;
II) solicite uma operação de entrada/saída;
III) libere explicitamente o processador, voltando à
fila de prontos.
Algoritmos de Escalonamento
1) Sistemas Batch (Lote)
2) Sistemas Interativos
3) Sistemas de Tempo Real
Algoritmos de Escalonamento em
Batch
1) First-Come First-Served (ou FIFO);
2) Shortest Job First (SJF);
3) Shortest Remaining Time Next (SRTN);
First-Come First-Served
1) Não preemptivo;
2) Processos são executados na CPU seguindo a ordem
de requisição;
3) Fácil de entender e programar;
Desvantagem:
Ineficiente quando há processos que demoram na
sua execução.
First-Come First-Served (Lote)
1) Há uma fila de prontos
(3, 2, 1).
2) O processo 0 sendo 0
executado na CPU. 3 2 1
3) Processo só é
interrompido por E/S,
ou quando é
finalizado.
Shortest Job First (Lote)
1) Não preemptivo;
2) Deve-se prever o tempo de execução do processo;
3) Menor processo da lista é executado primeiro;
4) Menor turnaround (médio).
Desvantagens:
a) Todos os jobs precisam ser conhecidos de antemão.
b) Se jobs curtos começarem a chegar, os longos
podem demorar a ser executados.
Shortest Job First (Lote)
•A → (tempo) a
•B → b+a
•C → c+b+a
•D → d+c+b+a
• Tempo médio (turnaround) (4a+3b+2c+d)/4
Shortest Job First (Lote)
Algoritmo Shortest Remaining Time
Next (Lote)
1) Preemptivo;
2) Versão preemptiva do Shortest Job First;
3) Processos com menor tempo de execução são
executados primeiro;
4) Se um processo novo chega e seu tempo de
execução é menor do que o do processo corrente
na CPU, a CPU suspende o processo corrente e
executa o processo que acabou de chegar.
Algoritmo Shortest Remaining Time
Next (Lote)
Desvantagem:
a) Processos que consomem mais tempo podem
demorar muito para serem finalizados se muitos
processos pequenos chegarem (inanição ou
starvation).
b) Exceto que, pela preempção no Shortest Remaining
Time Next, o processo, mesmo rodando, seja
interrompido.
c) No Shortest Job First, se der a sorte de começar a
rodar, vai até o fim.
Concluindo
Foram abordados nesta aula:
• Processos e Escalonamento
Bibliografia:
• Sistemas Operacionais Modernos; Tanenbaum, A. S. 4ª
Edição
Na próxima aula:
• Escalonamento de Processos