You are on page 1of 18

Criada pelo Decreto N.

º 44-A/01 do Conselho de Ministros, em 06 de Julho de 2001

SISTEMAS OPERATIVOS
SLIDE 05
Professor P@ulo Mbonzi
paulo.mbonzi@itsl.ao/paulombonzi83.pm@gmail.com
telemoveis: +244 925 984 940/+244 919 975 722
sexta-feira, 28 de outubro de 2022
AULA Nº 05
SISTEMAS OPERATIVOS

PROCESSO E ESCALONAMENTO

2/18
PROCESSO E ESCALONAMENTO
Contextualizando
Na aula passada:
1)Gestão de processos

Aula de hoje:
1)Processo e Escalonamento

3/18
PROCESSO E ESCALONAMENTO
O QUE É ESCALONADOR?
É um módulo do S.O, que apita para determinar
e avisar o próximo processo a entrar na CPU.
A troca de processos é feita por este
componente do S.O que se chama Escalonador de
Processos.
Escalonador é o processo que
escolhe qual será o próximo Processos
processo a ser executado.
0 1 . . . n-1 n
Existem diversas
técnicas/algoritmos para
escalonamento de processos. Escalonador de Processos
Nível mais baixo do SO. 4/18
PROCESSO E ESCALONAMENTO
MUDANÇA DE CONTEXTO

A mudança de contexto
leva a um overhead de
tempo (tarefa cara):
a)É preciso salvar as
informações do
processo que esta
deixando/entrando na
CPU em seu BCP.
b)Salvar o conteúdo
dos registradores.

5/18
PROCESSO E ESCALONAMENTO
COMPONENTES ENVOLVIDOS

1)Despachante (Dispatcher):
a)Armazena e recupera o contexto;
b)Actualiza as informações no BCP;
c)Processo relativamente rápido
(0,1ms).
2)Escalonador (Schedular):
a)Escolhe a próxima tarefa a receber o
processador;
b)Parte mais demorada.

6/18
PROCESSO E ESCALONAMENTO
QUANDO O ESCALONADOR É CHAMADO?

1)Um novo processo é criado.


2)Quando um processo cria outro, qual
executar? Pai ou filho?
3)Um processo chegou ao fim e um processo
pronto deve ser executado.
4)Quando um processo é bloqueado
(dependência de E/S), outro deve ser
executado.

7/18
PROCESSO E ESCALONAMENTO
QUANDO E/S OCORRE, O ESCALONADOR DEVE:

1)Executar o processo que estava


esperando esse evento.
2)Continuar executando o processo que já
estava sendo executado; ou
3)Executar um terceiro processo que
esteja pronto para ser executado.

8/18
PROCESSO E ESCALONAMENTO
CATEGORIAS DO ESCALONADOR

1)Preemptivo:
a)Quando um processo pode, por algum
motivo, perder seu uso da CPU.
b)Provoca uma interrupção forçada de
um processo para que outro possa
usar a CPU.

2)Não preemptivo:
a)Permite que o processo sendo
executado continue executando.
9/18
PROCESSO E ESCALONAMENTO
CATEGORIAS DO ESCALONADOR (Cont.)

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.

10/18
PROCESSO E ESCALONAMENTO
ALGORITMOS E ESCALONAMENTO

1)Sistemas Batch (Lote)


2)Sistemas interativos
3)Sistemas de Tempo Real

11/18
PROCESSO E ESCALONAMENTO
ALGORITMOS DE ESCALONAMENTO EM BATCH

1)First-Come First-Served (ou FIFO);


2)Shortest Job First (SJF).
3)Shortest Remaining Time Next (SRTN).

12/18
PROCESSO E ESCALONAMENTO
FIRST-COME FIRST-SERVED (OU FIFO)

1)Não preemptivo;
2)Processos são executados na CPU
seguindo ordem de requisição;
3)Fácil de entender e programar;

Desvantagem:
Ineficiente quando há processos que
demoram na sua execução.

13/18
PROCESSO E ESCALONAMENTO
FIRST-COME FIRST-SERVED (LOTE)

1)Há uma fila de prontos


(3,2, 1).
2)O processo 0 sendo 3 2 1
0

executado na CPU.
3)Processo só é
interrompido por E/S,
ou quando é
finalizado.

14/18
PROCESSO E ESCALONAMENTO
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.
15/18
PROCESSO E ESCALONAMENTO
SHORTEST JOB FIRST (LOTE)
8 4 4 4 4 4 4 8

A B C D A B C D

Em ordem: Menor job primeiro:


Turnaround A = 8 Turnaround B = 4
Turnaround B = 12 Turnaround C = 8
Turnaround C = 16 Turnaround D = 12
Turnaround D = 20 Turnaround = 20
Media 56/4 = 14 Media 44/4 = 11

Numero de
(4a+3b+2c+d)/4 Processos

16/18
PROCESSO E ESCALONAMENTO
ALGORITMO SHORTEST REMAINING TIME NEXT
(LOTE)

1)Preemptivo;
2)Versão preemptiva do Shortest Job
First;
3)Processos com menor tempo de
execução~~ao são executados primeiro;
4)Se um processo novo chega a seu tempo
de execução é menor do que o do
processo corrente e executa o processo
que acabou de chegar.

17/18
CONCLUINDO
Foram abordados nesta aula:
Foram abordadas nesta aula:
✓ Processo e Escalomento.

Estes slides estão baseados na bibliografia:


Bibliografia:
▪ Sistemas Operacionais Modernos;
Tanenbaum, A.S. 4ª Edição.

Na próxima aula:
Escalonamento de Processos. 18/18

You might also like