Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia...

21
Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides que acompanham o livro “Operating Systems” de William Stallings)

Transcript of Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia...

Page 1: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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)

Page 2: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

Engenharia

Informática

Sis

tem

as O

pera

tivo

sObjectivos do Escalonamento

• Tempo de resposta

• Taxa de saída

• Eficiência do processador

Page 3: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

Engenharia

Informática

Sis

tem

as O

pera

tivo

sTipos de Escalonamento

Page 4: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.
Page 5: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.
Page 6: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 7: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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)

Page 8: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 9: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 10: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.
Page 11: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.
Page 12: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 13: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

Engenharia

Informática

Sis

tem

as O

pera

tivo

sExemplo de Escalonamento

de Processos

Page 14: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 15: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 16: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 17: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 18: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 19: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.
Page 20: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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

Page 21: Escalonamento de Processos Escola Superior de Tecnologia e Gestão de Beja Curso de Engenharia Informática Cadeira de Sistema Operativos (Adaptado dos slides.

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