SlideShare uma empresa Scribd logo
1 de 30
Sistemas Operacionais I
Gerências de Processos: Escalonamento
de CPU
Prof. Alexandre Duarte : http://alexandrend.com
Centro de Informática | Universidade Federal da Paraíba
Estes slides são baseados no material que acompanha o livro Operating
Systems Concepts de Silberschatz, Galvin and Gagne
Objetivos
 Introduzir o conceito de escalonamento de
CPU, base para os sistemas operacionais
multiprogramados
 Descrever vários algoritmos de escalonamento
de CPU
 Discutir os critérios de avaliaç ão para
selecionar um algoritmo de escalonamento de
CPU para um determinado sistema
Conceitos básicos
 Utilizaç ão máxima de
CPU é obtida com
multiprogramaç ão
 Ciclos de rajadas de
CPU–E/S
 A execuç ão de um
processo é um ciclo
de rajadas alternadas
de CPU e espera por
E/S
Histograma com as durações dos
picos de CPU
Escalonador de CPU
 Seleciona um entre os processos em memó ria prontos para
executar e aloca a CPU para ele
 O escalonamento de CPU pode ocorrer quando um
processo:
1. muda do estado executando para esperando
2. muda do estado executando para pronto
3. muda do estado esperando para pronto
4. é finalizado
 O escalonamento nas condições 1 e 4 é dito não-premptivo
 Em 2 e 3 é dito preemptivo
Despachante
 O mó dulo despachante transfere o controle da
CPU para o processo selecionado pelo
escalonador de curto prazo, o que envolve:
 trocar contexto
 alterar para o modo usuário
 fazer um salto para o endereç o de memó ria correto
para que o processo seja reiniciado
 Latência de despacho: é o tempo necessário
para o despachante para um processo e reiniciar
um outro
Critérios de escalonamento
 Utilizaç ão de CPU: manter a CPU o mais ocupada possível
 Vazão: # de processos que concluem sua execuç ão por unidade
de tempo
 Tempo de retorno: quantidade necessária de tempo para
executar um processo
 Tempo de espera: quantidade de tempo que um processo
aguardou na fila de prontos
 Tempo de resposta: quantidade de tempo entre a requisiç ão de
execuç ão de um programa e a produç ão da primeira resposta
(sistemas de compartilhamento de tempo)
Critérios de otimização para algoritmos de
escalonamento
 Utilizaç ão máxima de CPU
 Vazão máxima
 Tempo de retorno mínimo
 Tempo de espera mínimo
 Tempo de resposta mínimo
“Primeiro a Entrar, Primeiro a ser Atendido”
(FCFS)
Suponha que os processo cheguem na ordem: P1 , P2 , P3
Seriam escalonados como a seguir
Tempos de espera: P1 = 0; P2 = 24; P3 = 27
Tempo de espera médio: (0 + 24 + 27)/3 = 17
Continuando com o FCFS
Agora, suponha que os processos cheguem na ordem P2 , P3 , P1
O escalonamento seria
 Tempos de espera: P1 = 6;P2 = 0; P3 = 3
 Tempo de espera médio: (6 + 0 + 3)/3 = 3
 Muito melhor que no caso anterior!!!
 “Efeito comboio” atrás de um processo longo!
Menor Job Primeiro (SJF)
 Associa a cada processo a duraç ão do seu
pró ximo pico de CPU
 Usa essas duraç ões para escalonar o
processo com a menor duraç ão de pico de
CPU
 SJF é ó timo: dáo menor tempo médio de
espera para um dado conjunto de processos
 A dificuldade reside em saber qual seráa duraç ão
do pró ximo pico de CPU!
Exemplo do SJF
O SJF escalonaria da seguinte forma:
 Tempo de espera médio = (3 + 16 + 9 + 0) / 4 = 7
Determinando a duração do próximo
pico de CPU
Podemos apenas
estimar a duraç ão!
Uma estratégia é
utilizar a duraç ão dos
picos anteriores e
prever a duraç ão do
pró ximo pico pela
média exponencial:
Escalonamento por prioridade
 Cada processo recebe um nível de prioridade
 A CPU é alocada para o processo com a maior prioridade
(menor valor númerico)
 Preemptivo
 Não-preemptivo
 O SJF é um algoritmo de escalonamento por prioridade onde
a prioridade é a duração do pró ximo pico de CPU
 SJF com preempç ão = SRJF
 Problema ≡ Starvation : processos de baixa prioridade
podem nunca rodar
 Solução ≡ Envelhecimento : a medida que o tempo passa
a prioridade dos processos aumenta
Round Robin (RR)
 Cada processo recebe uma pequena quantidade de tempo
de CPU (quantum), usualmente entre 10 e 100
milissegundos.
 Depois que esse tempo de esgota o processo é interrompido e
inserido no fim da fila de prontos.
 Se existem n processos na fila de prontos e o quantum é q,
então cada processo recebe 1/n do tempo de CPU em
pedaços de tamanho máximo q.
 Nenhum processo espera mais que do que (n-1)q unidades de
tempo
 Desempenho
 q grande ⇒ FIFO
 q pequeno ⇒ q precisa ser grande em relaç ão ao tempo de
troca de contexto, caso contrário o overhead serámuito grande
Exemplo: RR com quantum = 4
 O escalonamento seria
 Geralmente apresenta um tempo de retorno médio
maior do que o do SFJ mas melhor tempo de
resposta
Duração do quantum e trocas de contexto
O tempo de retorno varia com o quantum
Filas de vários níveis
 A fila de prontos é particionada em várias filas
separadas
 Cada fila tem seu pró prio algoritmo de escalonamento
 Processos interativos: RR
 Processos de lote: FCFS
 O escalonamento precisa ser feito também entre as
filas
 Prioridade fixa: escalona todos da primeira fila para depois
passar para a pró xima.
 Possibilidade de haver starvation.
 Fatia de tempo: cada fila recebe uma fatia de tempo da
CPU para dividir entre seus processos
 80% do tempo para processos interativos utilizando RR
 20% para processos de lote utilizando FCFS
Escalonamento com várias filas
Filas com feedback
 Um processo pode mudar de fila
 Forma de implementar envelhecimento
 Escalonador de várias filas com feedback é definido
pelos seguintes parâmetros:
 número de filas
 algoritmo de escalonamento para cada fila
 método para determinar em que fila um processo deve ser
inserido
 método para determinar quando promover um processo
 método para determinar quando rebaixar um processo
Exemplo de escalonamento com
várias filas com feedback
 Três filas
 Q0 – RR com quantum de 8 milissegundos
 Q1 – RR com quantum de 16 milissegundos
 Q2 – FCFS
 Escalonamento
 Um novo job entra na fila Q0 e é servido em ordem FIFO.
Quando ele recebe a CPU, em tem 8 milissegundos. Se
ele não terminar é então movido para a fila Q1.
 Os jobs da fila Q1 também são servidos em ordem FIFO,
recebendo 16 milissegundos adicionais. Se ainda assim
não terminar é movido para a fila Q2.
Exemplo de escalonamento com
várias filas com feedback
Escalonamento de threads
 Distinç ão entre threads do usuário e threads do
núcleo
 Nos modelos muitos-para-um e muitos-para-
muitos a biblioteca de threads escalona threads do
usuário para rodar em LWPs
 Conhecido como escopo de disputa de processo
pois a competição pela CPU ocorre dentro do
processo
 Threads do núcleo são escalonados diretamente
para a CPU, resultando em um escopo de
disputa de sistema uma vez que a competiç ão
envolve todas as threads do sistema
Escalonamento com múltiplos
processadores
 O escalonamento de CPU é mais complexo quando múltiplas CPUs estão
disponíveis
 Processadores homogêneos em um multiprocessador
 Multiprocessamento assimé trico: apenas um processador acessa as
estruturas de dados do sistema, diminuindo a necessidade de
compartilhamento de dados
 Multiprocessamento simé tricos: cada processador faz o seu pró prio
escalonamento
 todos os processos ficam em uma fila de prontos comum
 cada processador pode ter sua pró pria fila de prontos
 Afinidade com o processador: o processo tem afinidade com o
processador no qual ele estáexecutando
 afinidade leve
 afinidade forte
NUMA e escalonamento de CPU
Processadores com múltiplos
núcleos
 A tendência atual é incluir múltiplos núcleos de
processamento em um mesmo chip
 Mais rápido e consome menos energia
 Múltiplas threads por núcleo também é uma
tendência
 Enquanto recupera dados da memó ria para uma
thread (queda de memó ria) aproveita para
executar uma outra
Múltiplos núcleos e múltiplas
threads
Avaliação de algoritmos
 Modelagem determinística: recebe um carga
de trabalha pré-determinada e mede o
desempenho de cada algoritmo para essa
carga de trabalho
 Modelos de filas
 Simulaç ões
 Implementaç ão
Avaliação de algoritmos de escalonamento
através de simulação

Mais conteúdo relacionado

Mais procurados

Noções básicas de computação hardware
Noções básicas de computação   hardwareNoções básicas de computação   hardware
Noções básicas de computação hardwareJocelma Rios
 
Aula 12 - Escalonamento
Aula 12 - EscalonamentoAula 12 - Escalonamento
Aula 12 - Escalonamentocamila_seixas
 
Aulas 1 e 2 - Hardware
Aulas 1 e 2 - HardwareAulas 1 e 2 - Hardware
Aulas 1 e 2 - HardwareJocelma Rios
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoriaaudineisilva1
 
Sistemas Operacionais Modernos Capítulo 3 Deadlock
Sistemas Operacionais Modernos Capítulo 3 DeadlockSistemas Operacionais Modernos Capítulo 3 Deadlock
Sistemas Operacionais Modernos Capítulo 3 DeadlockWellington Oliveira
 
Aula 3 sistema computacional (hardware e software)
Aula 3   sistema computacional (hardware e software)Aula 3   sistema computacional (hardware e software)
Aula 3 sistema computacional (hardware e software)Vitor Hugo Melo Araújo
 
2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoria2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoriaComputação Depressão
 
Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Leinylson Fontinele
 
0769 Arquitectura Interna Do Computador
0769   Arquitectura Interna Do Computador0769   Arquitectura Interna Do Computador
0769 Arquitectura Interna Do Computadoraerc
 
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Leinylson Fontinele
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Pepe Rocker
 
Arquitetura de-computadores
Arquitetura de-computadoresArquitetura de-computadores
Arquitetura de-computadoresPimentel
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threadsSilvino Neto
 
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Sistemas Operacionais - 2 - Tipos de Sistemas ComputacionaisSistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Sistemas Operacionais - 2 - Tipos de Sistemas ComputacionaisMauro Duarte
 

Mais procurados (20)

Noções básicas de computação hardware
Noções básicas de computação   hardwareNoções básicas de computação   hardware
Noções básicas de computação hardware
 
Sistemas Operacionais
Sistemas OperacionaisSistemas Operacionais
Sistemas Operacionais
 
Aula 12 - Escalonamento
Aula 12 - EscalonamentoAula 12 - Escalonamento
Aula 12 - Escalonamento
 
Aulas 1 e 2 - Hardware
Aulas 1 e 2 - HardwareAulas 1 e 2 - Hardware
Aulas 1 e 2 - Hardware
 
Gerenciamento de Memoria
Gerenciamento de MemoriaGerenciamento de Memoria
Gerenciamento de Memoria
 
Arquitetura de-computadores-apostila-avançada completa
Arquitetura de-computadores-apostila-avançada completaArquitetura de-computadores-apostila-avançada completa
Arquitetura de-computadores-apostila-avançada completa
 
Sistemas Operacionais Modernos Capítulo 3 Deadlock
Sistemas Operacionais Modernos Capítulo 3 DeadlockSistemas Operacionais Modernos Capítulo 3 Deadlock
Sistemas Operacionais Modernos Capítulo 3 Deadlock
 
Aula 3 sistema computacional (hardware e software)
Aula 3   sistema computacional (hardware e software)Aula 3   sistema computacional (hardware e software)
Aula 3 sistema computacional (hardware e software)
 
2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoria2009 1 - sistemas operacionais - aula 8 - memoria
2009 1 - sistemas operacionais - aula 8 - memoria
 
Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)Sistemas Operacionais - Aula 05 (Concorrência)
Sistemas Operacionais - Aula 05 (Concorrência)
 
0769 Arquitectura Interna Do Computador
0769   Arquitectura Interna Do Computador0769   Arquitectura Interna Do Computador
0769 Arquitectura Interna Do Computador
 
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
Sistemas Operacionais - Aula 03 (Conceitos de hardware e software)
 
Processos e threads cap 02 (i unidade)
Processos e threads   cap 02 (i unidade)Processos e threads   cap 02 (i unidade)
Processos e threads cap 02 (i unidade)
 
Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)Sistemas Operativos (Operating Systems)
Sistemas Operativos (Operating Systems)
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Aula 12 - Processador
Aula 12 - ProcessadorAula 12 - Processador
Aula 12 - Processador
 
Arquitetura de-computadores
Arquitetura de-computadoresArquitetura de-computadores
Arquitetura de-computadores
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
 
Gerenciamento de memória
Gerenciamento de memóriaGerenciamento de memória
Gerenciamento de memória
 
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Sistemas Operacionais - 2 - Tipos de Sistemas ComputacionaisSistemas Operacionais - 2 - Tipos de Sistemas Computacionais
Sistemas Operacionais - 2 - Tipos de Sistemas Computacionais
 

Destaque

Gerências de Processos: Threads
Gerências de Processos: ThreadsGerências de Processos: Threads
Gerências de Processos: ThreadsAlexandre Duarte
 
Mutexes, Monitores e Semáforos
Mutexes, Monitores e SemáforosMutexes, Monitores e Semáforos
Mutexes, Monitores e SemáforosThiago Poiani
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
 
2009 1 - sistemas operacionais - aula 6 - escalonamento de processos
2009 1 - sistemas operacionais - aula 6 - escalonamento de processos2009 1 - sistemas operacionais - aula 6 - escalonamento de processos
2009 1 - sistemas operacionais - aula 6 - escalonamento de processosComputação Depressão
 
Gerência de Processos: Processos
Gerência de Processos: ProcessosGerência de Processos: Processos
Gerência de Processos: ProcessosAlexandre Duarte
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: IntroduçãoAlexandre Duarte
 
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicosComputação Depressão
 
Aula3 escalonamento
Aula3 escalonamentoAula3 escalonamento
Aula3 escalonamentoBruno Rick
 
Otimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril BorgesOtimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril BorgesMauro Duarte
 
Seminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosSeminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosRobson Ferreira
 
Perdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril BorgesPerdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril BorgesMauro Duarte
 
Sistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando ProcessosSistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando ProcessosLuiz Arthur
 
Porque tanta pressa - Caril Borges
Porque tanta pressa - Caril BorgesPorque tanta pressa - Caril Borges
Porque tanta pressa - Caril BorgesMauro Duarte
 
As armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril BorgesAs armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril BorgesMauro Duarte
 
00 apresentação desenvolvimento em redes de computadores
00   apresentação desenvolvimento em redes de computadores00   apresentação desenvolvimento em redes de computadores
00 apresentação desenvolvimento em redes de computadoresMauro Duarte
 

Destaque (20)

Gerências de Processos: Threads
Gerências de Processos: ThreadsGerências de Processos: Threads
Gerências de Processos: Threads
 
Mutexes, Monitores e Semáforos
Mutexes, Monitores e SemáforosMutexes, Monitores e Semáforos
Mutexes, Monitores e Semáforos
 
Escalonamento de processos
Escalonamento de processosEscalonamento de processos
Escalonamento de processos
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e Threads
 
2009 1 - sistemas operacionais - aula 6 - escalonamento de processos
2009 1 - sistemas operacionais - aula 6 - escalonamento de processos2009 1 - sistemas operacionais - aula 6 - escalonamento de processos
2009 1 - sistemas operacionais - aula 6 - escalonamento de processos
 
Gerência de Processos: Processos
Gerência de Processos: ProcessosGerência de Processos: Processos
Gerência de Processos: Processos
 
Gabarito ano2004
Gabarito ano2004Gabarito ano2004
Gabarito ano2004
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: Introdução
 
Pseudoparalelismo
PseudoparalelismoPseudoparalelismo
Pseudoparalelismo
 
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
2009 1 - sistemas operacionais - aula 5 - semaforos e problemas classicos
 
Causalidade e Abdução
Causalidade e AbduçãoCausalidade e Abdução
Causalidade e Abdução
 
Aula3 escalonamento
Aula3 escalonamentoAula3 escalonamento
Aula3 escalonamento
 
Os pássaros
Os pássarosOs pássaros
Os pássaros
 
Otimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril BorgesOtimistas ou pessimistas - Caril Borges
Otimistas ou pessimistas - Caril Borges
 
Seminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosSeminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processos
 
Perdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril BorgesPerdoando como José perdoou - Caril Borges
Perdoando como José perdoou - Caril Borges
 
Sistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando ProcessosSistemas Operacionais - Gnu/Linux Gerenciando Processos
Sistemas Operacionais - Gnu/Linux Gerenciando Processos
 
Porque tanta pressa - Caril Borges
Porque tanta pressa - Caril BorgesPorque tanta pressa - Caril Borges
Porque tanta pressa - Caril Borges
 
As armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril BorgesAs armadilhas de satanás - Caril Borges
As armadilhas de satanás - Caril Borges
 
00 apresentação desenvolvimento em redes de computadores
00   apresentação desenvolvimento em redes de computadores00   apresentação desenvolvimento em redes de computadores
00 apresentação desenvolvimento em redes de computadores
 

Semelhante a Sistemas Operacionais I: Escalonamento de CPU

ProcessosEscalonamento.pdf
ProcessosEscalonamento.pdfProcessosEscalonamento.pdf
ProcessosEscalonamento.pdfssuser1d8ddd
 
3 escalonamento processos
3 escalonamento processos3 escalonamento processos
3 escalonamento processosfrteles
 
Algoritmo de escalonamento Fuzzy Round Robin
Algoritmo de escalonamento Fuzzy Round RobinAlgoritmo de escalonamento Fuzzy Round Robin
Algoritmo de escalonamento Fuzzy Round RobinMarcos Castro
 
(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05Norton Trevisan Roman
 
Gerencia de processo by "slideplayer.com.br"
Gerencia de processo by "slideplayer.com.br"Gerencia de processo by "slideplayer.com.br"
Gerencia de processo by "slideplayer.com.br"Erickson Carvalho Vaz
 
Escalonador Earliest Deadline First - TDC2014SP
Escalonador Earliest Deadline First - TDC2014SPEscalonador Earliest Deadline First - TDC2014SP
Escalonador Earliest Deadline First - TDC2014SPRafael Moreira
 
Coroutine e concorrência python
Coroutine e concorrência   python Coroutine e concorrência   python
Coroutine e concorrência python Kaueh Moreno
 
Escalonamento no Windows
Escalonamento no WindowsEscalonamento no Windows
Escalonamento no WindowsFee Kosta
 
Algoritimos de Escalonamento
Algoritimos de EscalonamentoAlgoritimos de Escalonamento
Algoritimos de EscalonamentoJunior Cesar
 
Aula Simulação por Eventos Discretos
Aula Simulação por Eventos DiscretosAula Simulação por Eventos Discretos
Aula Simulação por Eventos DiscretosAntonio Marcos Alberti
 
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSilvano Oliveira
 
Aula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdf
Aula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdfAula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdf
Aula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdfMatheusNS1
 

Semelhante a Sistemas Operacionais I: Escalonamento de CPU (20)

ProcessosEscalonamento.pdf
ProcessosEscalonamento.pdfProcessosEscalonamento.pdf
ProcessosEscalonamento.pdf
 
3 escalonamento processos
3 escalonamento processos3 escalonamento processos
3 escalonamento processos
 
Sistemas operacionais 04
Sistemas operacionais   04Sistemas operacionais   04
Sistemas operacionais 04
 
Processos+threads.2pp
Processos+threads.2ppProcessos+threads.2pp
Processos+threads.2pp
 
Algoritmo de escalonamento Fuzzy Round Robin
Algoritmo de escalonamento Fuzzy Round RobinAlgoritmo de escalonamento Fuzzy Round Robin
Algoritmo de escalonamento Fuzzy Round Robin
 
(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05(ACH2044) Sistemas Operacionais - Aula 05
(ACH2044) Sistemas Operacionais - Aula 05
 
Gerencia de processo by "slideplayer.com.br"
Gerencia de processo by "slideplayer.com.br"Gerencia de processo by "slideplayer.com.br"
Gerencia de processo by "slideplayer.com.br"
 
Escalonador Earliest Deadline First - TDC2014SP
Escalonador Earliest Deadline First - TDC2014SPEscalonador Earliest Deadline First - TDC2014SP
Escalonador Earliest Deadline First - TDC2014SP
 
Prova1d
Prova1dProva1d
Prova1d
 
Coroutine e concorrência python
Coroutine e concorrência   python Coroutine e concorrência   python
Coroutine e concorrência python
 
Sistemas operacionais 03
Sistemas operacionais   03Sistemas operacionais   03
Sistemas operacionais 03
 
Escalonamento no Windows
Escalonamento no WindowsEscalonamento no Windows
Escalonamento no Windows
 
Processador mips - pipeline
Processador mips - pipelineProcessador mips - pipeline
Processador mips - pipeline
 
Unix - Robert
Unix - RobertUnix - Robert
Unix - Robert
 
Unix - Sistema Operacional
Unix - Sistema OperacionalUnix - Sistema Operacional
Unix - Sistema Operacional
 
Algoritimos de Escalonamento
Algoritimos de EscalonamentoAlgoritimos de Escalonamento
Algoritimos de Escalonamento
 
Aula Simulação por Eventos Discretos
Aula Simulação por Eventos DiscretosAula Simulação por Eventos Discretos
Aula Simulação por Eventos Discretos
 
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
 
F oc aula_04
F oc aula_04F oc aula_04
F oc aula_04
 
Aula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdf
Aula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdfAula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdf
Aula 8 - Organização Lógica e Funcional de um Processador (Parte 2).pdf
 

Mais de Alexandre Duarte

Táticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosTáticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosAlexandre Duarte
 
Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Alexandre Duarte
 
Escolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaEscolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaAlexandre Duarte
 
Ciência da Computação como Ciência
Ciência da Computação como CiênciaCiência da Computação como Ciência
Ciência da Computação como CiênciaAlexandre Duarte
 
Metodologia da Pesquisa Científica: Introdução
Metodologia da Pesquisa Científica:  IntroduçãoMetodologia da Pesquisa Científica:  Introdução
Metodologia da Pesquisa Científica: IntroduçãoAlexandre Duarte
 
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerGráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerAlexandre Duarte
 
Panorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBPanorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBAlexandre Duarte
 
Sumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisSumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisAlexandre Duarte
 
Correlação e Classificação
Correlação e ClassificaçãoCorrelação e Classificação
Correlação e ClassificaçãoAlexandre Duarte
 
Sumarização Estatística 2D
Sumarização Estatística 2DSumarização Estatística 2D
Sumarização Estatística 2DAlexandre Duarte
 
Sumarização Estatística 1D
Sumarização Estatística 1DSumarização Estatística 1D
Sumarização Estatística 1DAlexandre Duarte
 
Preparação e Limpeza de Dados
Preparação e Limpeza de DadosPreparação e Limpeza de Dados
Preparação e Limpeza de DadosAlexandre Duarte
 
Introdução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosIntrodução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosAlexandre Duarte
 
Introdução ao Projeto de Surveys
Introdução ao Projeto de SurveysIntrodução ao Projeto de Surveys
Introdução ao Projeto de SurveysAlexandre Duarte
 
Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Alexandre Duarte
 
Introdução à Analise de Dados - aula 3 - Agregação de Dados
Introdução à Analise de Dados - aula 3 - Agregação de DadosIntrodução à Analise de Dados - aula 3 - Agregação de Dados
Introdução à Analise de Dados - aula 3 - Agregação de DadosAlexandre Duarte
 

Mais de Alexandre Duarte (20)

Projeto de Experimentos
Projeto de ExperimentosProjeto de Experimentos
Projeto de Experimentos
 
Táticas para Projeto de Experimentos
Táticas para Projeto de ExperimentosTáticas para Projeto de Experimentos
Táticas para Projeto de Experimentos
 
Fazer Ciência é Difícil!
Fazer Ciência é Difícil!Fazer Ciência é Difícil!
Fazer Ciência é Difícil!
 
Atividades Científica
Atividades CientíficaAtividades Científica
Atividades Científica
 
Escolhendo um Projeto de Pesquisa
Escolhendo um Projeto de PesquisaEscolhendo um Projeto de Pesquisa
Escolhendo um Projeto de Pesquisa
 
Ciência da Computação como Ciência
Ciência da Computação como CiênciaCiência da Computação como Ciência
Ciência da Computação como Ciência
 
Metodologia da Pesquisa Científica: Introdução
Metodologia da Pesquisa Científica:  IntroduçãoMetodologia da Pesquisa Científica:  Introdução
Metodologia da Pesquisa Científica: Introdução
 
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazerGráficos: 10 dicas sobre o que fazer e sobre o que não fazer
Gráficos: 10 dicas sobre o que fazer e sobre o que não fazer
 
Panorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPBPanorama de Pesquisas em Análise de Dados na UFPB
Panorama de Pesquisas em Análise de Dados na UFPB
 
Agrupamento com K-Means
Agrupamento com K-MeansAgrupamento com K-Means
Agrupamento com K-Means
 
Sumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis NominaisSumarização Estatística 2D: Variáveis Nominais
Sumarização Estatística 2D: Variáveis Nominais
 
Correlação e Classificação
Correlação e ClassificaçãoCorrelação e Classificação
Correlação e Classificação
 
Sumarização Estatística 2D
Sumarização Estatística 2DSumarização Estatística 2D
Sumarização Estatística 2D
 
Sumarização Estatística 1D
Sumarização Estatística 1DSumarização Estatística 1D
Sumarização Estatística 1D
 
Transformação de Dados
Transformação de DadosTransformação de Dados
Transformação de Dados
 
Preparação e Limpeza de Dados
Preparação e Limpeza de DadosPreparação e Limpeza de Dados
Preparação e Limpeza de Dados
 
Introdução ao Projeto de Experimentos
Introdução ao Projeto de ExperimentosIntrodução ao Projeto de Experimentos
Introdução ao Projeto de Experimentos
 
Introdução ao Projeto de Surveys
Introdução ao Projeto de SurveysIntrodução ao Projeto de Surveys
Introdução ao Projeto de Surveys
 
Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01Introdução à Análise de Dados - Aula 01
Introdução à Análise de Dados - Aula 01
 
Introdução à Analise de Dados - aula 3 - Agregação de Dados
Introdução à Analise de Dados - aula 3 - Agregação de DadosIntrodução à Analise de Dados - aula 3 - Agregação de Dados
Introdução à Analise de Dados - aula 3 - Agregação de Dados
 

Último

TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptAlineSilvaPotuk
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfaulasgege
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxkarinasantiago54
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024Sandra Pratas
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveaulasgege
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxconcelhovdragons
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxIsabellaGomes58
 
PRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoPRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoSilvaDias3
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdfDemetrio Ccesa Rayme
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfHenrique Pontes
 
Bingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosBingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosAntnyoAllysson
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfErasmo Portavoz
 
19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileirosMary Alvarenga
 
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 anoAdelmaTorres2
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfEyshilaKelly1
 
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.HildegardeAngel
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresaulasgege
 
Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024GleyceMoreiraXWeslle
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxacaciocarmo1
 
Mapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfMapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfangelicass1
 

Último (20)

TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.pptTREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
TREINAMENTO - BOAS PRATICAS DE HIGIENE NA COZINHA.ppt
 
Cultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdfCultura e Sociedade - Texto de Apoio.pdf
Cultura e Sociedade - Texto de Apoio.pdf
 
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptxFree-Netflix-PowerPoint-Template-pptheme-1.pptx
Free-Netflix-PowerPoint-Template-pptheme-1.pptx
 
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
HORA DO CONTO3_BECRE D. CARLOS I_2023_2024
 
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chaveAula - 2º Ano - Cultura e Sociedade - Conceitos-chave
Aula - 2º Ano - Cultura e Sociedade - Conceitos-chave
 
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptxSlide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
Slide de exemplo sobre o Sítio do Pica Pau Amarelo.pptx
 
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptxQUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
QUARTA - 1EM SOCIOLOGIA - Aprender a pesquisar.pptx
 
PRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basicoPRIMEIRO---RCP - DEA - BLS estudos - basico
PRIMEIRO---RCP - DEA - BLS estudos - basico
 
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
Geometria  5to Educacion Primaria EDU  Ccesa007.pdfGeometria  5to Educacion Primaria EDU  Ccesa007.pdf
Geometria 5to Educacion Primaria EDU Ccesa007.pdf
 
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdfBRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
BRASIL - DOMÍNIOS MORFOCLIMÁTICOS - Fund 2.pdf
 
Bingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteirosBingo da potenciação e radiciação de números inteiros
Bingo da potenciação e radiciação de números inteiros
 
O guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdfO guia definitivo para conquistar a aprovação em concurso público.pdf
O guia definitivo para conquistar a aprovação em concurso público.pdf
 
19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros19 de abril - Dia dos povos indigenas brasileiros
19 de abril - Dia dos povos indigenas brasileiros
 
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
637743470-Mapa-Mental-Portugue-s-1.pdf 4 ano
 
Guia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdfGuia completo da Previdênci a - Reforma .pdf
Guia completo da Previdênci a - Reforma .pdf
 
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
LIVRO A BELA BORBOLETA. Ziraldo e Zélio.
 
Sociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autoresSociologia Contemporânea - Uma Abordagem dos principais autores
Sociologia Contemporânea - Uma Abordagem dos principais autores
 
Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024Apresentação sobre o Combate a Dengue 2024
Apresentação sobre o Combate a Dengue 2024
 
Baladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptxBaladão sobre Variação Linguistica para o spaece.pptx
Baladão sobre Variação Linguistica para o spaece.pptx
 
Mapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdfMapas Mentais - Português - Principais Tópicos.pdf
Mapas Mentais - Português - Principais Tópicos.pdf
 

Sistemas Operacionais I: Escalonamento de CPU

  • 1. Sistemas Operacionais I Gerências de Processos: Escalonamento de CPU Prof. Alexandre Duarte : http://alexandrend.com Centro de Informática | Universidade Federal da Paraíba Estes slides são baseados no material que acompanha o livro Operating Systems Concepts de Silberschatz, Galvin and Gagne
  • 2. Objetivos  Introduzir o conceito de escalonamento de CPU, base para os sistemas operacionais multiprogramados  Descrever vários algoritmos de escalonamento de CPU  Discutir os critérios de avaliaç ão para selecionar um algoritmo de escalonamento de CPU para um determinado sistema
  • 3. Conceitos básicos  Utilizaç ão máxima de CPU é obtida com multiprogramaç ão  Ciclos de rajadas de CPU–E/S  A execuç ão de um processo é um ciclo de rajadas alternadas de CPU e espera por E/S
  • 4. Histograma com as durações dos picos de CPU
  • 5. Escalonador de CPU  Seleciona um entre os processos em memó ria prontos para executar e aloca a CPU para ele  O escalonamento de CPU pode ocorrer quando um processo: 1. muda do estado executando para esperando 2. muda do estado executando para pronto 3. muda do estado esperando para pronto 4. é finalizado  O escalonamento nas condições 1 e 4 é dito não-premptivo  Em 2 e 3 é dito preemptivo
  • 6. Despachante  O mó dulo despachante transfere o controle da CPU para o processo selecionado pelo escalonador de curto prazo, o que envolve:  trocar contexto  alterar para o modo usuário  fazer um salto para o endereç o de memó ria correto para que o processo seja reiniciado  Latência de despacho: é o tempo necessário para o despachante para um processo e reiniciar um outro
  • 7. Critérios de escalonamento  Utilizaç ão de CPU: manter a CPU o mais ocupada possível  Vazão: # de processos que concluem sua execuç ão por unidade de tempo  Tempo de retorno: quantidade necessária de tempo para executar um processo  Tempo de espera: quantidade de tempo que um processo aguardou na fila de prontos  Tempo de resposta: quantidade de tempo entre a requisiç ão de execuç ão de um programa e a produç ão da primeira resposta (sistemas de compartilhamento de tempo)
  • 8. Critérios de otimização para algoritmos de escalonamento  Utilizaç ão máxima de CPU  Vazão máxima  Tempo de retorno mínimo  Tempo de espera mínimo  Tempo de resposta mínimo
  • 9. “Primeiro a Entrar, Primeiro a ser Atendido” (FCFS) Suponha que os processo cheguem na ordem: P1 , P2 , P3 Seriam escalonados como a seguir Tempos de espera: P1 = 0; P2 = 24; P3 = 27 Tempo de espera médio: (0 + 24 + 27)/3 = 17
  • 10. Continuando com o FCFS Agora, suponha que os processos cheguem na ordem P2 , P3 , P1 O escalonamento seria  Tempos de espera: P1 = 6;P2 = 0; P3 = 3  Tempo de espera médio: (6 + 0 + 3)/3 = 3  Muito melhor que no caso anterior!!!  “Efeito comboio” atrás de um processo longo!
  • 11. Menor Job Primeiro (SJF)  Associa a cada processo a duraç ão do seu pró ximo pico de CPU  Usa essas duraç ões para escalonar o processo com a menor duraç ão de pico de CPU  SJF é ó timo: dáo menor tempo médio de espera para um dado conjunto de processos  A dificuldade reside em saber qual seráa duraç ão do pró ximo pico de CPU!
  • 12. Exemplo do SJF O SJF escalonaria da seguinte forma:  Tempo de espera médio = (3 + 16 + 9 + 0) / 4 = 7
  • 13. Determinando a duração do próximo pico de CPU Podemos apenas estimar a duraç ão! Uma estratégia é utilizar a duraç ão dos picos anteriores e prever a duraç ão do pró ximo pico pela média exponencial:
  • 14. Escalonamento por prioridade  Cada processo recebe um nível de prioridade  A CPU é alocada para o processo com a maior prioridade (menor valor númerico)  Preemptivo  Não-preemptivo  O SJF é um algoritmo de escalonamento por prioridade onde a prioridade é a duração do pró ximo pico de CPU  SJF com preempç ão = SRJF  Problema ≡ Starvation : processos de baixa prioridade podem nunca rodar  Solução ≡ Envelhecimento : a medida que o tempo passa a prioridade dos processos aumenta
  • 15. Round Robin (RR)  Cada processo recebe uma pequena quantidade de tempo de CPU (quantum), usualmente entre 10 e 100 milissegundos.  Depois que esse tempo de esgota o processo é interrompido e inserido no fim da fila de prontos.  Se existem n processos na fila de prontos e o quantum é q, então cada processo recebe 1/n do tempo de CPU em pedaços de tamanho máximo q.  Nenhum processo espera mais que do que (n-1)q unidades de tempo  Desempenho  q grande ⇒ FIFO  q pequeno ⇒ q precisa ser grande em relaç ão ao tempo de troca de contexto, caso contrário o overhead serámuito grande
  • 16. Exemplo: RR com quantum = 4  O escalonamento seria  Geralmente apresenta um tempo de retorno médio maior do que o do SFJ mas melhor tempo de resposta
  • 17. Duração do quantum e trocas de contexto
  • 18. O tempo de retorno varia com o quantum
  • 19. Filas de vários níveis  A fila de prontos é particionada em várias filas separadas  Cada fila tem seu pró prio algoritmo de escalonamento  Processos interativos: RR  Processos de lote: FCFS  O escalonamento precisa ser feito também entre as filas  Prioridade fixa: escalona todos da primeira fila para depois passar para a pró xima.  Possibilidade de haver starvation.  Fatia de tempo: cada fila recebe uma fatia de tempo da CPU para dividir entre seus processos  80% do tempo para processos interativos utilizando RR  20% para processos de lote utilizando FCFS
  • 21. Filas com feedback  Um processo pode mudar de fila  Forma de implementar envelhecimento  Escalonador de várias filas com feedback é definido pelos seguintes parâmetros:  número de filas  algoritmo de escalonamento para cada fila  método para determinar em que fila um processo deve ser inserido  método para determinar quando promover um processo  método para determinar quando rebaixar um processo
  • 22. Exemplo de escalonamento com várias filas com feedback  Três filas  Q0 – RR com quantum de 8 milissegundos  Q1 – RR com quantum de 16 milissegundos  Q2 – FCFS  Escalonamento  Um novo job entra na fila Q0 e é servido em ordem FIFO. Quando ele recebe a CPU, em tem 8 milissegundos. Se ele não terminar é então movido para a fila Q1.  Os jobs da fila Q1 também são servidos em ordem FIFO, recebendo 16 milissegundos adicionais. Se ainda assim não terminar é movido para a fila Q2.
  • 23. Exemplo de escalonamento com várias filas com feedback
  • 24. Escalonamento de threads  Distinç ão entre threads do usuário e threads do núcleo  Nos modelos muitos-para-um e muitos-para- muitos a biblioteca de threads escalona threads do usuário para rodar em LWPs  Conhecido como escopo de disputa de processo pois a competição pela CPU ocorre dentro do processo  Threads do núcleo são escalonados diretamente para a CPU, resultando em um escopo de disputa de sistema uma vez que a competiç ão envolve todas as threads do sistema
  • 25. Escalonamento com múltiplos processadores  O escalonamento de CPU é mais complexo quando múltiplas CPUs estão disponíveis  Processadores homogêneos em um multiprocessador  Multiprocessamento assimé trico: apenas um processador acessa as estruturas de dados do sistema, diminuindo a necessidade de compartilhamento de dados  Multiprocessamento simé tricos: cada processador faz o seu pró prio escalonamento  todos os processos ficam em uma fila de prontos comum  cada processador pode ter sua pró pria fila de prontos  Afinidade com o processador: o processo tem afinidade com o processador no qual ele estáexecutando  afinidade leve  afinidade forte
  • 27. Processadores com múltiplos núcleos  A tendência atual é incluir múltiplos núcleos de processamento em um mesmo chip  Mais rápido e consome menos energia  Múltiplas threads por núcleo também é uma tendência  Enquanto recupera dados da memó ria para uma thread (queda de memó ria) aproveita para executar uma outra
  • 28. Múltiplos núcleos e múltiplas threads
  • 29. Avaliação de algoritmos  Modelagem determinística: recebe um carga de trabalha pré-determinada e mede o desempenho de cada algoritmo para essa carga de trabalho  Modelos de filas  Simulaç ões  Implementaç ão
  • 30. Avaliação de algoritmos de escalonamento através de simulação