arquitetura de sistemas operacionais técnico em informática mbi1 gerência do processador
DESCRIPTION
Arquitetura de Sistemas Operacionais Técnico em Informática MBI1 Gerência do Processador. Sumário. Introdução Funções Básicas Critérios de escalonamento Escalonamentos não-preemptivos e preemptivos Escalonamento FIFO Escalonamento SJF Escalonamento cooperativo Escalonamento circular - PowerPoint PPT PresentationTRANSCRIPT
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 1
Arquitetura de Sistemas Arquitetura de Sistemas OperacionaisOperacionais
Técnico em Informática MBI1Técnico em Informática MBI1
Gerência do ProcessadorGerência do Processador
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 2
Sumário
• Introdução• Funções Básicas• Critérios de escalonamento• Escalonamentos não-preemptivos e
preemptivos• Escalonamento FIFO• Escalonamento SJF• Escalonamento cooperativo• Escalonamento circular• Escalonamento por prioridades• Escalonamento circular com prioridades
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 3
Sumário
• Escalonamento por múltiplas filas• Escalonamento por múltiplas filas com
realimentação• Política de Escalonamento em Sistemas de
Tempo Compartilhado • Política de Escalonamento em Sistemas de
Tempo Real
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 4
Introdução
• Escalonamento
Estado d eEsp era
Estado d eExecu çã o
Estado d ePronto
Esca lo namento
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 5
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 6
Throughput
Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro, ou a quantidade de dados processados em um determinado espaço de tempo, pode-se usar o termo throughput para referir-se a quantidade de dados transferidos em discos rígidos ou em uma rede, por exemplo; tendo como unidades básicas de medidas o Kbps, o Mbps e o Gbps.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 7
Turnaround
Turnaround Intervalo de tempo entre a submissão de um processo e sua finalização (soma dos intervalos esperando para ser carregado na memória, fila de pronto, em execução e em espera)
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 8
Critérios de Escalonamento
• Utilização do processador• Throughput• Tempo de Processador / Tempo de UCP• Tempo de Espera• Tempo de Turnaround • Tempo de Resposta
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 9
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 10
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 11Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Escalonamento FIFO
• Exemplo
Processo 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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 12Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Escalonamento SJF
• Escalonamento Shortest-Job-First• Não preemptivo• O processo com o menor tempo para
ser completado é escolhido.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 13Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Escalonamento SJF
• Escalonamento Shortest-Job-First
Processo A
Processo B
Processo C
3 7 17 u .t.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 14
Escalonamento Cooperativo
• Processo em execução libera voluntariamente a UCP
• Verifica a fila de mensagens periodicamente (Windows 3.11)
• Um programa mal escrito pode monopolizar a CPU
• Podem ocorrer problemas• Exemplo: primeiros sistemas MS-Windows
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 15
Escalonamento Circular ou Round Robin
• Define-se uma unidade de tempo denominada time-slice que corresponde ao tempo limite para uso da CPU.
• Após este tempo ter sido passado, o processo sofre preempção e é colocado no final da fila de pronto.
• A fila de pronto é tratada como uma fila circular (FIFO).
• O escalonador “pega” o primeiro processo da fila de pronto para ser executado e define um tempo de 1 time-slice.
• Se o tempo de execução for maior que 1, o time gera uma interrupção.
• Projetado para sistemas de tempo compartilhado.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 16
Escalonamento Circular ou Round Robin
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 17
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 18
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 19
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 20
Escalonamento por Múltiplas Filas
• Os processos são previamentes divididos em grupos em função do tipo de processamento realizado. Interativo / 1˚ plano (foreground) Batch / 2˚ plano (background) Processo BATCH - É todo aquele que não necessita
de intervenção do usuário, isto é, uma vez iniciado será terminado automaticamente.
• A cada grupo é aplicado um escalonamento adequado.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 21
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
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
Cap. 8 – Gerência do Processador 22
Escalonamento por Múltiplas Filas com Realimentação
• Os processos não permanecem em uma mesma fila até o término do processamento;
• O SO faz um ajuste dinâmico para ajustar os processos em função do comportamento do sistema.
• Os processos não são previamente associados às filas, mas direcionados pelo sistema entre as diversas filas com base no seu comportamento.
• Parâmetros: Número de filas; Algoritmo de escalonamento para cada fila Método para determinar em que fila um processo
entra.