Sei sulla pagina 1di 5

Porque é necessário escalonar?

Processos precisam ser executados

Escalonamento de Processos concorrem a CPU


Processos Escalonador:
– Componente (implementação) do sistema
operacional

– Determina a ordem de execução dos processos


baseado num algoritmo de escalonamento

– Lê a fila que contém os processos no estado “pronto”


e os ordena para execução

O que provoca o escalonamento?

Pronto Executando

Bloqueado
O que afeta a performance de um
Ilustração da troca de contexto
algoritmo de escalonamento?
Cada processo possui informações que
permitem definir precisamente seu estado. preempção
• Tais informações definem o contexto do processo

Troca de Contexto Processo 1


Dispatcher
Escalonador
Dispatcher
Processo 3
(P1) (P3)
– Mecanismo que permite ao escalonador interromper tempo
uma tarefa, e executá-la posteriormente, sem
corromper seu estado. Verificar
Salvar o contexto de P1 qual o próximo
Restaura o contexto de
processo a ser executado
P3

– Separação do escalonamento
• Escalonamento = Política + Mecanismo

Qual o objetivo do escalonamento? Qual o objetivo do escalonamento?


DEPENDE do tipo de sistema operacional – Propósito Geral:
• Possuem usuários interagindo
– Lote: • Precisam ser preemptivos
• Não possui usuários aguardando  pode ser • OBJETIVOS
preemptivo ou não – melhorar o tempo médio de resposta
• Não possui muita troca de contexto – atender as expectativas dos usuários

• OBJETIVOS:
– melhorar o throughput (vazão) – Tempo real:
– melhorar o turnaround (tempo entre submissão e • Em geral são preemptivos
finalização) • OBJETIVO:
– manter a CPU ocupada – cumprir requisitos lógicos
– cumprir requisitos temporais
Qual o objetivo do escalonamento? Escalonamento para sistemas em lote

Independente do tipo de sistema operacional, FCFS (ou FIFO)


TODOS os algoritmos de escalonamento – Primeiro processo da fila de pronto é o
precisam atender a alguns critérios: escolhido para executar.
– Não-preemptivo
– Justiça (fairness) – Fácil de entender
– Aplicação da política de escalonamento – Fácil de programar
– Equilíbrio (balance) entre as partes do sistema – “Justo”
– Processos de baixo custo de execução
podem esperar muito tempo para ser
executado

Escalonamento para sistemas em lote

FCFS (ou FIFO)


– Fazer o escalonamento para os seguintes processos:

Custo de Instante de
execução chegada
12 t=0
8 t=3
15 t=5
5 t = 10
Escalonamento para sistemas em lote Escalonamento para sistemas em lote

Menor Job Primeiro Menor Job Primeiro


– Fazer o escalonamento para os seguintes
– O job de menor custo de execução executa processos
primeiro.
– Não-preemptivo
Processo Custo de
– Fácil de entender execução
– Fácil de programar A 12
– “Justo” B 8
– Para ser adequado, requer que todos os jobs C 15
estejam disponíveis simultaneamente
D 5

Escalonamento em sistemas de
SJF – Shortest Job First
propósito geral
Prioridade
– Processos tem diferentes prioridade de execução
Processo Custo de – Preemptivo
execução
5
– Baseado nos ciclos da CPU ou quantum
A 12
– Prioridade pode ser atribuída estaticamente ou
15 B 8
dinamicamente
C 15
8 – Pode ser implementado considerando filas de
D 5
prioridades
12 – A implementação de filas pode representar um
problema!
Escalonamento em sistemas de
Prioridade
propósito geral
Prioridade Processo Custo de Instante de Prioridade
execução Chegada
– Fazer o escalonamento para os seguintes
processos A 12 t=0 3
B 8 t=0 4
Processo Custo de Instante de Prioridade C 15 t=0 2
execução Chegada
D 5 t=0 1
A 12 t=0 3
B 8 t=0 4 5

C 15 t=0 2 15

D 5 t=0 1 8

12
tempo

Escalonamento em sistemas de Escalonamento em sistemas de


propósito geral propósito geral
Prioridade Filas Múltiplas
– Fazer o escalonamento para os seguintes – Processos executam dentro de uma fatia de tempo
processos
predefinida (quantum
quantum)
Processo Custo de Instante de Prioridade – Preemptivo
execução Chegada – Justo
A 12 t=0 3 – Tamanho do quantum variável  trocas de contexto.
B 8 t=3 4 – Adaptável para diferentes tamanhos de processo
C 15 t=5 2 – Os processos são promovidos a medida que o tempo
passa
D 5 t = 10 1

Potrebbero piacerti anche