Upload
internet
View
103
Download
0
Embed Size (px)
Citation preview
09/03/10 20:13 Claudio de Oliveira – [email protected]
1/22
09/03/10 20:13 Claudio de Oliveira – [email protected]
2/22
O que é?A política de escalonamento é a base da gerência do processador e da multiprogramação.
Estado d eEsp era
Estado d eExecu çã o
Estado d ePronto
Esca lo namento
09/03/10 20:13 Claudio de Oliveira – [email protected]
Funções Básicas
Manter a UCP ocupada a maior parte do tempo
Balancear o uso da UCP entre processos
Privilegiar a execução de aplicações críticas
Maximizar o throughput
Oferecer tempos de resposta razoáveis para usuários interativos
Implementada pelo scheduler e dispatcher
Processos – unidades de alocação de recursos
Threads – unidades de escalonamento
3/22
09/03/10 20:13 Claudio de Oliveira – [email protected]
Critérios de Escalonamento
Utilização do processador
Throughput
Tempo de Processador / Tempo de UCP
Tempo de Espera
Tempo de Turnaround
Tempo de Resposta
4/22
Escalonamentos Não-Preemptivo e Preemptivo
Preempção – possibilidade do SO interromper um processo em execução e substituí-lo por outro
Escalonamento não-preemptivo
Escalonamento preemptivo
5/22
Escalonamento FIFO
Escalonamento First-In-First-Out
U C P
Estado d eC r iação
Estado d eEsp era
Fila do s pro cesso s n o estad o d e Pron to
Estado d eTérm ino
6/22
Escalonamento FIFO
ExemploProcesso A
Processo B
Processo C
10 14 17
Processo A
Processo B
Processo C
4 7 17 u .t.
u .t.
ProcessoTem p o d e
p rocessa do r(u .t.)
A
B
C
10
4
3
7/22
Arq
uite
tura
de
Sis
tem
as O
per
aci
on
ais
– M
ach
ad
o/M
aia
Escalonamento SJF
Escalonamento Shortest-Job-First
Processo A
Processo B
Processo C
3 7 17 u .t.
8/22
Escalonamento Cooperativo
Processo em execução libera voluntariamente a UCP
Verifica a fila de mensagens periodicamente
Podem ocorrer problemas
Exemplo: primeiros sistemas
MS-Windows
9/22
Escalonamento Circular
Preem p ção po r tem p o
U C P
Estado d eC r ia çã o
Estado d eEsp era
Fila do s pro cesso s n o estad o d e Pron to
Estado d eTérm ino
10/22
Escalonamento Circular
Exemplo
Processo A
Processo B
Processo C
2 4 17 u .t.6 8 10 11
11/22
Escalonamento Circular
Escalonamento circular virtual
Preem p ção po r tem p o
U C P
Estado d eC r iação
Fila do s pro cesso s n o estad o d e Pron to
Estado d eTérm ino
Estado d eEsp era
Fila au xi lia r
12/22
Escalonamento por Prioridades
U C P
Estado d eTérm ino
Fila s do s p ro cesso s n o estad o d e Pro n to
Pr io r id ad e P1
Pr io r id ad e P2
Pr io r id ad e Pn
Estado d eC r iação
Estado d eEsp era
Preem p ção po r p r io r id ad e
13/22
Escalonamento por Prioridades
Exemplo
Processo A
Processo B
Processo C
3 13 17 u .t.
ProcessoTem p o d e
p rocessa do r(u .t.)
A
B
C
10
4
3
Pr io r id ad e
2
1
3
14/22
Escalonamento Circular com Prioridades
U C P
Estado d eTérm ino
Fila dos processos n o estad o d e Pron to
Pr io r id ad e P1
Pr io r id ad e P2
Pr io r id ad e Pn
Estado d eC r iação
Estado d eEsp era
Preem p ção po r tem p o o u pr io rida de
15/22
Escalonamento por Múltiplas Filas
U C P
Fila de p rocessos d o sistem a
Fila de p rocessos in tera tivos
Fila de p rocessos b a tch
M a io rp rio r id ade
M eno rp rio r id ade
16/22
Escalonamento por Múltiplas Filas com Realimentação
U C P
Fila 1 (FIFO A da ptad o )
Preem p ção po r tem p o
Fila 2 (FIFO A da ptad o )
Preem p ção po r tem p o
Fila 3 (FIFO A da ptad o )
Preem p ção po r tem p o
Fila n (C ircu la r)
Preem p ção po r tem p o
Men
or
Prio
rid
ad
eM
aio
rPr
iori
da
de
Ma
ior
fati
ad
e te
mp
oM
eno
r fa
tia
de
tem
po
17/22
Políticas em Sistemas de Tempo Compartilhado
Escalonamento FIFO (exemplo)
Pro cesso A
Pro cesso B
u .t.277
E/S
de
A
11
E/S
de
B
19
E/S
de
A
21
E/S
de
B
Pro cessoTem p o d e
p rocessa do r(u .t.)
A
B
21
6
C aracter ística
C PU - b ou nd
I / O - b ou nd
18/22
Políticas em Sistemas de Tempo Compartilhado
Escalonamento circular (exemplo)
Pro cessoTem p o d e
p rocessa do r(u .t.)
A
B
15
10
C aracter ística
C PU - b ou nd
I / O - b ou nd
Pro cesso A
Pro cesso B
u .t.
Pree
mp
ção
po
rte
mp
o d
e A
5
E/S
de
B
9
E/S
de
A
11
E/S
de
B
13
Pree
mp
ção
po
rte
mp
o d
e A
18
E/S
de
B
20
E/S
de
A
23 25
E/S
de
B
27
UC
P liv
re19/22
Políticas em Sistemas de Tempo Compartilhado
Escalonamento circular com prioridades (exemplo)
Pro cesso A
Pro cesso B
u .t.
E/S
de
B
4
Pre
emp
ção
po
rp
rio
rid
ad
e d
e A
6E/
S d
e B
8
Pre
emp
ção
po
rp
rio
rid
ad
e d
e A
12
E/S
de
B
14
E/S
de
A
15 17
Pre
emp
ção
po
rp
rio
rid
ad
e d
e A
18
E/S
de
B
20
Pre
emp
ção
po
rp
rio
rid
ad
e d
e A
24
E/S
de
B
27
UC
P liv
re
Pro cessoTem p o d e
p rocessa do r(u .t.)
A
B
12
13
C aracter ística
C PU - b ou nd
I / O - b ou nd
Pr io r id a d e
Ba ixa
A lta
20/22
Políticas em Sistemas de Tempo Real
Tempos de respostas rígidos
Aplicações de controle de processos
Utiliza prioridades estáticas
Não utiliza fatias de tempo
Exemplo: OpenVMS
21/22
Exercícios
Questões para reflexão
Questões para simulação
09/03/10 20:13 Claudio de Oliveira – [email protected]
22/22