SlideShare uma empresa Scribd logo
1 de 48
Baixar para ler offline
Aula 06 – Escalonamento de Processos
Norton Trevisan Roman
28 de agosto de 2017
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 1 / 38
Sistemas Interativos
Algoritmos para Escalonamento:
Round-Robin (Alternˆancia Circular, ou Revezamento)
Prioridade
M´ultiplas Filas
Shortest Process Next
Garantido
Lottery
Fair-Share
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 2 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Antigo, mais simples e mais utilizado
Preemptivo
Cada processo recebe uma fatia de tempo de
execu¸c˜ao chamado quantum
Os processos s˜ao ent˜ao colocados em uma fila circular (de
prontos) e executados um-a-um
Quando seu tempo acaba, o processo ´e suspenso e volta
para o final da fila
Outro processo (primeiro da fila) ´e ent˜ao colocado em
execu¸c˜ao
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 3 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Quando um processo solicita E/S, vai para a fila de
bloqueados e, ao terminar a opera¸c˜ao, volta para o final da
fila de prontos
Se o processo terminar antes do fim do quantum, o pr´oximo
na fila ´e escolhido
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 4 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 5 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Quando um processo ´e removido da CPU e outro
escalonado, quanto tempo este tem para rodar?
Se o hardware do clock permitir programa¸c˜ao de
tempo
O SO pode estabelecer um novo quantum para o novo
processo → ele ter´a um quantum inteiro
A interrup¸c˜ao do clock ser´a gerada somente ap´os esse tempo
passar
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 6 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Se ele n˜ao permitir programa¸c˜ao
O SO n˜ao tem controle sobre as interrup¸c˜oes do clock
O processo ´e escalonado e ser´a interrompido quando vier a
interrup¸c˜ao do clock → receber´a somente o resto do
quantum do processo anterior
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 7 / 38
Sistemas Interativos: Algoritmos
Round-Robin: Exemplo (quantum = 2ut)
Tempo m´edio de execu¸c˜ao (turnaround m´edio):
T =
t1 + t2 + t3 + t4
4
=
(13 − 0) + (4 − 0) + (12 − 1) + (14 − 3)
4
=
39
4
= 9, 75ut
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 8 / 38
Sistemas Interativos: Algoritmos
Round-Robin: Exemplo (quantum = 2ut)
Evolu¸c˜ao da fila de prontos
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 9 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Problemas:
Tempo de chaveamento de contexto (salvar e carregar
registradores, mapas de mem´oria etc.)
Processos I/O-Bound (que realizam opera¸c˜oes de E/S) s˜ao
prejudicados – usam pouco a CPU e quando retornam de
uma opera¸c˜ao v˜ao para o final da fila
Como E/S ´e demorada, processos I/O-Bound podem n˜ao
voltar na mesma posi¸c˜ao e at´e mesmo perder v´arias voltas
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 10 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Qual deve ser o tamanho do quantum?
Se for muito pequeno, ocorrem muitas trocas → diminui a
eficiˆencia da CPU
Se for muito longo, ser´a como o first come, first served
Overhead
overhead =
ttroca contexto
tquantum + ttroca contexto
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 11 / 38
Sistemas Interativos: Algoritmos
Round-Robin:
Qual o tamanho do quantum?
Quantum = 4ms
Se o chaveamento levar 1ms, dos 5ms totais, 20% de tempo de CPU
´e perdido na troca de processos (ou seja, tarefas administrativas)
Quantum = 99 ms
Tempo de espera dos processos pela vez de rodar ´e maior, j´a que a
fatia de tempo dada a cada um deles ´e grande
Com 1ms de chaveamento gastamos 1% do tempo total de CPU no
chaveamento → em 10 processos, o d´ecimo levar´a quase 1s para
iniciar
Quantum razo´avel: 20-50ms
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 12 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Cada processo possui uma prioridade
Os processos prontos com maior prioridade s˜ao executados
primeiro (a fila ´e ordenada por prioridade)
Round Robin pressup˜oe igual prioridade para todos os
processos
Prioridades s˜ao atribu´ıdas estatica (pelo usu´ario.
Ex: nice) ou dinamicamente (pelo sistema, ou pelo
usu´ario. Ex: renice)
Preemptivo
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 13 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades – Ex:
(quanto maior, maior a prioridade)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 14 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Como evitar que os processos com maior prioridade
sejam executados indefinidamente?
Diminuir a prioridade do processo em execu¸c˜ao a cada
interrup¸c˜ao do clock (Ex: cr´editos do Linux)
Se isso fizer dele o segundo na fila, troc´a-lo pelo pr´oximo
processo com maior prioridade (chaveamento)
Alternativamente:
Cada processo possui um quantum m´aximo (n˜ao
necessariamente igual) para rodar
Quando terminar o quantum, o segundo mais alto em
prioridade rodar´a
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 15 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2) B j´a rodava, continua
B(2) A(3) C(3) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2) B j´a rodava, continua
B(2) A(3) C(3) D(2) B perde a prioridade
A(3) C(3) B(2) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2) B j´a rodava, continua
B(2) A(3) C(3) D(2) B perde a prioridade
A(3) C(3) B(2) D(2) roda A novamente
A(2) C(3) B(2) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2) B j´a rodava, continua
B(2) A(3) C(3) D(2) B perde a prioridade
A(3) C(3) B(2) D(2) roda A novamente
A(2) C(3) B(2) D(2) A perde a prioridade
C(3) A(2) B(2) D(2)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2) B j´a rodava, continua
B(2) A(3) C(3) D(2) B perde a prioridade
A(3) C(3) B(2) D(2) roda A novamente
A(2) C(3) B(2) D(2) A perde a prioridade
C(3) A(2) B(2) D(2) roda C
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Prioridades
Exemplo (decremento com interrup¸c˜ao do clock):
A(5) B(4) C(3) D(2) roda A
A(4) B(4) C(3) D(2) A j´a rodava, continua
A(3) B(4) C(3) D(2) A perde a prioridade
B(4) A(3) C(3) D(2) roda B
B(3) A(3) C(3) D(2) B j´a rodava, continua
B(2) A(3) C(3) D(2) B perde a prioridade
A(3) C(3) B(2) D(2) roda A novamente
A(2) C(3) B(2) D(2) A perde a prioridade
C(3) A(2) B(2) D(2) roda C
Quando todas as prioridades zerarem, elas s˜ao redistribu´ıdas
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
Sistemas Interativos: Algoritmos
Classes de Prioridades
O que acontece se v´arios processos tiverem a
mesma prioridade?
Podemos agrup´a-los em classes de prioridade
Usa prioridade entre as classes e Round Robin dentro
delas
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 17 / 38
Sistemas Interativos: Algoritmos
Classes de Prioridades
Enquanto houver processos execut´aveis na classe
maior:
Rode cada um de seus processos usando Round Robin
(quantum fixo de tempo)
Se essa classe n˜ao tiver mais processos para
executar:
Passe `a de prioridade imediatamente inferior
Deve-se ajustar as prioridades ocasionalmente
Do contr´ario, as menos priorit´arias morrer˜ao de fome –
starvation
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 18 / 38
Sistemas Interativos: Algoritmos
Classes de Prioridades
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 19 / 38
Sistemas Interativos: Algoritmos
Classes de Prioridades
Mais f´acil de atualizar a fila de prioridade com
processos novos – menos compara¸c˜oes
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 20 / 38
Sistemas Interativos: Algoritmos
Classes de Prioridades
Windows (6 classes)
Baixa ou ociosa
Abaixo do normal
Normal
Acima do normal
Alta
Tempo-real
Linux (2 escalas)
Tarefas interativas
Tarefas de tempo-real
N˜ao usam round robin, mas prioridade dentro de cada classe.
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 21 / 38
Sistemas Interativos: Algoritmos
Classes de Prioridades: Linux
SHED FIFO e SHED RR (round robin): tarefas de tempo-real
SCHED OTHER: demais tarefas
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 22 / 38
Sistemas Interativos: Algoritmos
M´ultiplas Filas (IBM 7094):
Preemptivo
Varia¸c˜ao das classes de prioridades
´Util quando se tem pouca mem´oria
O que geraria chaveamento constante para disco
Define classes de prioridades
Processos pertencem a uma classe espec´ıfica
Uma fila de processos por classe
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 23 / 38
Sistemas Interativos: Algoritmos
M´ultiplas Filas (IBM 7094):
Cada classe de prioridades possui quanta diferentes
Processos na classe mais alta, rodam um quantum
Os das classes seguintes, por 2, e ent˜ao por 4, 8, 16 etc
Se um processo usar todos os quanta alocados a ele, ´e
rebaixado uma classe
A ´ultima classe roda com Round Robin
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 24 / 38
Sistemas Interativos: Algoritmos
M´ultiplas Filas:
Cada vez que um processo ´e executado e suspenso
ele recebe mais tempo para execu¸c˜ao
Inicialmente recebe 1 quantum, e ´e suspenso
Ent˜ao muda de classe e recebe 2, sendo suspenso;
Muda novamente de classe e recebe 4, 8, 16 etc
Reduz o n´umero de trocas de processo
Os mais curtos terminam logo
Aos mais longos ´e dado mais tempo, progressivamente
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 25 / 38
Sistemas Interativos: Algoritmos
M´ultiplas Filas:
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 26 / 38
Sistemas Interativos: Algoritmos
M´ultiplas Filas:
Ex.: um processo precisa de 100 quanta para ser
finalizado
Inicialmente, ele recebe um quantum para execu¸c˜ao
Das pr´oximas vezes ele recebe, respectivamente, 2, 4, 8,
16, 32 e 64 quanta (7 chaveamentos) para execu¸c˜ao (em
vez de 100, com round robin)
Quanto mais pr´oximo de ser finalizado, menos
frequente (embora mais demorado) ´e o processo na
CPU
Mais ele desce na fila de prioridade
Eficiˆencia → os pequenos e r´apidos ainda tem vez
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 27 / 38
Sistemas Interativos: Algoritmos
M´ultiplas Filas:
As classes podem ser criadas de v´arias maneiras
Ex: 4 classes (Berkeley – XDS 940)
Terminal (mais alta): processos esperando entrada de
terminal (quando recebesse a entrada)
E/S: processos esperando E/S do disco (que ficou
pronto)
Quantum curto: processos cujo quantum terminou
Quantum longo: processos que terminassem seu
quantum v´arias vezes sem serem bloqueados pelo
terminal ou outra E/S
Favorece usu´arios interativos mais que processos em
segundo plano
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 28 / 38
Sistemas Interativos: Algoritmos
Shortest Process Next
Mesma ideia do Shortest Job First
Executa-se a tarefa mais curta primeiro
Problema: em processos interativos n˜ao se conhece
o tempo necess´ario para execu¸c˜ao
Como empregar esse algoritmo: ESTIMATIVA de
TEMPO!
Com base em execu¸c˜oes antigas da mesma tarefa
Verificar o comportamento passado do processo e estimar o
tempo.
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 29 / 38
Sistemas Interativos: Algoritmos
Shortest Process Next
E se tarefas curtas n˜ao pararem de chegar? Inani¸c˜ao
Solu¸c˜ao: envelhecimento (aging)
T0 – tempo estimado para um determinado processo
T1 – tempo medido de sua execu¸c˜ao
Nova estimativa para o mesmo processo:
aT0 + (1 − a)T1, com a = 1
2
, por exemplo
Estima o valor seguinte da s´erie a partir da m´edia ponderada
do valor sendo medido e a estimativa anterior
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 30 / 38
Sistemas Interativos: Algoritmos
Escalonamento Garantido
Garantias s˜ao dadas aos
processos dos usu´arios
n processos → 1
n do
tempo de CPU para
cada processo
Mant´em registro do total de CPU que cada processo j´a usou
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 31 / 38
Sistemas Interativos: Algoritmos
Escalonamento Garantido
Calcula a quantidade
destinada a cada um
(o quanto
teoricamente deveria
ter usado)
Ex: tempo desde a cria¸c˜ao ÷ n
Compara com o tempo que efetivamente usou
Se um processo j´a teve mais que deveria, um outro, que teve menos,
ser´a escolhido
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 32 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Loteria
Cada processo recebe “bilhetes” que lhe d˜ao direito
a recursos do sistema (inclusive processador)
Fatias de processamento iguais por bilhete
Quando um escalonamento deve ser feito, escolhe-se
aleatoriamente um bilhete, e seu dono conseguir´a o
recurso
Processos mais importantes podem receber mais bilhetes
Processos que detenham uma fra¸c˜ao f dos bilhetes
obter˜ao uma fra¸c˜ao f dos recursos (aproximadamente)
Processos podem doar bilhetes para colabora¸c˜ao com
outros (e recebˆe-los de volta depois, quando o outro
processo doar a ele)
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 33 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Loteria
Precisa garantir que todos ter˜ao sua vez de rodar
Um modo ´e manter duas listas:
Bilhetes j´a sorteados
Bilhetes ainda n˜ao sorteados
Quando a lista de n˜ao sorteados se esvazia, os bilhetes da
lista de sorteados s˜ao transferidos a ela, reiniciando o
processo
S˜ao ideais quando se quer “fracionar” o uso da CPU
entre v´arios processos, a taxas diferentes
Basta dar a mesma propor¸c˜ao em bilhetes
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 34 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Fra¸c˜ao Justa (Fair Share)
`A exce¸c˜ao do fair share, em geral o dono do
processo n˜ao ´e levado em conta:
Se um usu´ario A possui 9 processos, e um usu´ario B 1, o
usu´ario A ganha 90% do uso da CPU, com round-robin
Fair share: O tempo de CPU ´e alocado ao usu´ario
Se a um usu´ario foi prometido uma certa fatia de tempo, ele
a receber´a, independentemente do n´umero de processos
Extens˜ao do algoritmo garantido
N˜ao necessariamente usa 1/n
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 35 / 38
Sistemas Interativos: Algoritmos
Escalonamento por Fra¸c˜ao Justa (Fair Share)
Exemplo:
Usu´ario 1 → A, B, C, D
Usu´ario 2 → E
Foi prometido 50% da CPU a cada um, e ´e usado Round
Robin:
A, E, B, E, C, E, D, E, A, E, ... (poss´ıvel escolha)
Se 2/3 deve ir ao Usu´ario 1:
A, B, E, C, D, E, A, B, E, ...
Tudo depende da no¸c˜ao de “justi¸ca” do sistema
Se ´e propor¸c˜ao do tempo, n´umero de tarefas etc
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 36 / 38
Sistemas de Tempo Real
Para obter comportamento em tempo real:
Programas s˜ao divididos em v´arios processos
Cada um previs´ıvel e geralmente r´apido
Eventos causam a execu¸c˜ao de processos:
Quando um evento externo ´e detectado, cabe ao escalonador
arrumar os processos de modo que todos os prazos sejam
cumpridos
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 37 / 38
Sistemas de Tempo Real
Eventos podem ser classificados como:
Peri´odicos: ocorrem em intervalos regulares de
tempo
Aperi´odicos: acontecem de modo imprevis´ıvel
Dependendo do tempo necess´ario para cada evento,
pode n˜ao ser poss´ıvel processar todos em tempo
Temos ent˜ao um sistema n˜ao escalon´avel
Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 38 / 38

Mais conteúdo relacionado

Mais procurados

(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 01
(ACH2044) Sistemas Operacionais - Aula 01(ACH2044) Sistemas Operacionais - Aula 01
(ACH2044) Sistemas Operacionais - Aula 01Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 08
(ACH2044) Sistemas Operacionais - Aula 08(ACH2044) Sistemas Operacionais - Aula 08
(ACH2044) Sistemas Operacionais - Aula 08Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 18
(ACH2044) Sistemas Operacionais - Aula 18(ACH2044) Sistemas Operacionais - Aula 18
(ACH2044) Sistemas Operacionais - Aula 18Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 20
(ACH2044) Sistemas Operacionais - Aula 20(ACH2044) Sistemas Operacionais - Aula 20
(ACH2044) Sistemas Operacionais - Aula 20Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 13
(ACH2044) Sistemas Operacionais - Aula 13(ACH2044) Sistemas Operacionais - Aula 13
(ACH2044) Sistemas Operacionais - Aula 13Norton Trevisan Roman
 
(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21Norton Trevisan Roman
 
Gerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUGerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUAlexandre Duarte
 
(ACH2044) Sistemas Operacionais - Aula 17
(ACH2044) Sistemas Operacionais - Aula 17(ACH2044) Sistemas Operacionais - Aula 17
(ACH2044) Sistemas Operacionais - Aula 17Norton Trevisan Roman
 
3 escalonamento processos
3 escalonamento processos3 escalonamento processos
3 escalonamento processosfrteles
 
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
 
Fundamentos de Sistemas Operacionais de Tempo Real - Criando seu próprio esc...
Fundamentos de Sistemas  Operacionais de Tempo Real - Criando seu próprio esc...Fundamentos de Sistemas  Operacionais de Tempo Real - Criando seu próprio esc...
Fundamentos de Sistemas Operacionais de Tempo Real - Criando seu próprio esc...Marcelo Barros de Almeida
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsPedro De Almeida
 
Aula 02-processos-e-threads-tanenbaum-parte-1
Aula 02-processos-e-threads-tanenbaum-parte-1Aula 02-processos-e-threads-tanenbaum-parte-1
Aula 02-processos-e-threads-tanenbaum-parte-1Cristiano Pires Martins
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threadsSilvino Neto
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senaiCarlos Melo
 
Aula 13 - Algoritmos de Escalonamento
Aula 13 - Algoritmos de Escalonamento Aula 13 - Algoritmos de Escalonamento
Aula 13 - Algoritmos de Escalonamento camila_seixas
 
Sistema Operacional de Tempo Real (vx works)
Sistema Operacional de Tempo Real (vx works)Sistema Operacional de Tempo Real (vx works)
Sistema Operacional de Tempo Real (vx works)Jose Silva
 

Mais procurados (20)

(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11(ACH2044) Sistemas Operacionais - Aula 11
(ACH2044) Sistemas Operacionais - Aula 11
 
(ACH2044) Sistemas Operacionais - Aula 01
(ACH2044) Sistemas Operacionais - Aula 01(ACH2044) Sistemas Operacionais - Aula 01
(ACH2044) Sistemas Operacionais - Aula 01
 
(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12(ACH2044) Sistemas Operacionais - Aula 12
(ACH2044) Sistemas Operacionais - Aula 12
 
(ACH2044) Sistemas Operacionais - Aula 08
(ACH2044) Sistemas Operacionais - Aula 08(ACH2044) Sistemas Operacionais - Aula 08
(ACH2044) Sistemas Operacionais - Aula 08
 
(ACH2044) Sistemas Operacionais - Aula 18
(ACH2044) Sistemas Operacionais - Aula 18(ACH2044) Sistemas Operacionais - Aula 18
(ACH2044) Sistemas Operacionais - Aula 18
 
(ACH2044) Sistemas Operacionais - Aula 20
(ACH2044) Sistemas Operacionais - Aula 20(ACH2044) Sistemas Operacionais - Aula 20
(ACH2044) Sistemas Operacionais - Aula 20
 
(ACH2044) Sistemas Operacionais - Aula 13
(ACH2044) Sistemas Operacionais - Aula 13(ACH2044) Sistemas Operacionais - Aula 13
(ACH2044) Sistemas Operacionais - Aula 13
 
(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21(ACH2044) Sistemas Operacionais - Aula 21
(ACH2044) Sistemas Operacionais - Aula 21
 
Gerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPUGerências de Processos: Escalonamento de CPU
Gerências de Processos: Escalonamento de CPU
 
(ACH2044) Sistemas Operacionais - Aula 17
(ACH2044) Sistemas Operacionais - Aula 17(ACH2044) Sistemas Operacionais - Aula 17
(ACH2044) Sistemas Operacionais - Aula 17
 
3 escalonamento processos
3 escalonamento processos3 escalonamento processos
3 escalonamento processos
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e Threads
 
Fundamentos de Sistemas Operacionais de Tempo Real - Criando seu próprio esc...
Fundamentos de Sistemas  Operacionais de Tempo Real - Criando seu próprio esc...Fundamentos de Sistemas  Operacionais de Tempo Real - Criando seu próprio esc...
Fundamentos de Sistemas Operacionais de Tempo Real - Criando seu próprio esc...
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e Threads
 
Aula 02-processos-e-threads-tanenbaum-parte-1
Aula 02-processos-e-threads-tanenbaum-parte-1Aula 02-processos-e-threads-tanenbaum-parte-1
Aula 02-processos-e-threads-tanenbaum-parte-1
 
Processos e threads
Processos e threadsProcessos e threads
Processos e threads
 
Processos threads senai
Processos threads senaiProcessos threads senai
Processos threads senai
 
SO-04 Escalonamento de Processos
SO-04 Escalonamento de ProcessosSO-04 Escalonamento de Processos
SO-04 Escalonamento de Processos
 
Aula 13 - Algoritmos de Escalonamento
Aula 13 - Algoritmos de Escalonamento Aula 13 - Algoritmos de Escalonamento
Aula 13 - Algoritmos de Escalonamento
 
Sistema Operacional de Tempo Real (vx works)
Sistema Operacional de Tempo Real (vx works)Sistema Operacional de Tempo Real (vx works)
Sistema Operacional de Tempo Real (vx works)
 

Semelhante a (ACH2044) Sistemas Operacionais - Aula 06

Sorting Algorithms - Merge and Quick
Sorting Algorithms - Merge and QuickSorting Algorithms - Merge and Quick
Sorting Algorithms - Merge and QuickMichel Alves
 
Tutorial aed iii 005 - algoritmo de ordenação quicksort
Tutorial aed iii   005 - algoritmo de ordenação quicksortTutorial aed iii   005 - algoritmo de ordenação quicksort
Tutorial aed iii 005 - algoritmo de ordenação quicksortFlávio Freitas
 
Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptssuserd654cb1
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptssuserd654cb1
 
So gabarito exerciciosescalonamentocpu-2012
So gabarito exerciciosescalonamentocpu-2012So gabarito exerciciosescalonamentocpu-2012
So gabarito exerciciosescalonamentocpu-2012Bill Lima
 
ProcessosEscalonamento.pdf
ProcessosEscalonamento.pdfProcessosEscalonamento.pdf
ProcessosEscalonamento.pdfssuser1d8ddd
 
Controle con matlab - material adicional 1.pdf
Controle con matlab - material adicional 1.pdfControle con matlab - material adicional 1.pdf
Controle con matlab - material adicional 1.pdfCarlosAlexisAlvarado4
 
Matemática Computacional
Matemática ComputacionalMatemática Computacional
Matemática ComputacionalRicardo Terra
 
Aula3 escalonamento
Aula3 escalonamentoAula3 escalonamento
Aula3 escalonamentoBruno Rick
 
Sistemas Operacionais - Aula 9 (Gerencia do Processador)
Sistemas Operacionais - Aula 9 (Gerencia do Processador)Sistemas Operacionais - Aula 9 (Gerencia do Processador)
Sistemas Operacionais - Aula 9 (Gerencia do Processador)Leinylson Fontinele
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenaçãoJonas Mendonça
 
Canais Assíncronos II - Aplicações
Canais Assíncronos II - AplicaçõesCanais Assíncronos II - Aplicações
Canais Assíncronos II - AplicaçõesHeron Carvalho
 
Sistemas 2009 1
Sistemas 2009 1Sistemas 2009 1
Sistemas 2009 1Eli Brito
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoGustavo Carvalho
 
Capítulo 4 - Resposta no domínio do tempo.pdf
Capítulo 4 - Resposta no domínio do tempo.pdfCapítulo 4 - Resposta no domínio do tempo.pdf
Capítulo 4 - Resposta no domínio do tempo.pdfJacquesCousteau1
 

Semelhante a (ACH2044) Sistemas Operacionais - Aula 06 (20)

Prova1d
Prova1dProva1d
Prova1d
 
Sorting Algorithms - Merge and Quick
Sorting Algorithms - Merge and QuickSorting Algorithms - Merge and Quick
Sorting Algorithms - Merge and Quick
 
Tutorial aed iii 005 - algoritmo de ordenação quicksort
Tutorial aed iii   005 - algoritmo de ordenação quicksortTutorial aed iii   005 - algoritmo de ordenação quicksort
Tutorial aed iii 005 - algoritmo de ordenação quicksort
 
Parte1e
Parte1eParte1e
Parte1e
 
Aula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.pptAula_07_Complexidade_de_Algoritmos.ppt
Aula_07_Complexidade_de_Algoritmos.ppt
 
Aula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).pptAula_07_Complexidade_de_Algoritmos (1).ppt
Aula_07_Complexidade_de_Algoritmos (1).ppt
 
So gabarito exerciciosescalonamentocpu-2012
So gabarito exerciciosescalonamentocpu-2012So gabarito exerciciosescalonamentocpu-2012
So gabarito exerciciosescalonamentocpu-2012
 
ProcessosEscalonamento.pdf
ProcessosEscalonamento.pdfProcessosEscalonamento.pdf
ProcessosEscalonamento.pdf
 
Controle con matlab - material adicional 1.pdf
Controle con matlab - material adicional 1.pdfControle con matlab - material adicional 1.pdf
Controle con matlab - material adicional 1.pdf
 
Matemática Computacional
Matemática ComputacionalMatemática Computacional
Matemática Computacional
 
Aula3 escalonamento
Aula3 escalonamentoAula3 escalonamento
Aula3 escalonamento
 
Sistemas Operacionais - Aula 9 (Gerencia do Processador)
Sistemas Operacionais - Aula 9 (Gerencia do Processador)Sistemas Operacionais - Aula 9 (Gerencia do Processador)
Sistemas Operacionais - Aula 9 (Gerencia do Processador)
 
Quicksort
QuicksortQuicksort
Quicksort
 
Algoritmos de ordenação
Algoritmos de ordenaçãoAlgoritmos de ordenação
Algoritmos de ordenação
 
Canais Assíncronos II - Aplicações
Canais Assíncronos II - AplicaçõesCanais Assíncronos II - Aplicações
Canais Assíncronos II - Aplicações
 
Sistemas 2009 1
Sistemas 2009 1Sistemas 2009 1
Sistemas 2009 1
 
Análise de Algoritmos
Análise de AlgoritmosAnálise de Algoritmos
Análise de Algoritmos
 
Análise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenaçãoAnálise de desempenho de algoritmos de ordenação
Análise de desempenho de algoritmos de ordenação
 
Capítulo 4 - Resposta no domínio do tempo.pdf
Capítulo 4 - Resposta no domínio do tempo.pdfCapítulo 4 - Resposta no domínio do tempo.pdf
Capítulo 4 - Resposta no domínio do tempo.pdf
 
Math
MathMath
Math
 

Mais de Norton Trevisan Roman

(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06Norton Trevisan Roman
 
(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05Norton Trevisan Roman
 

Mais de Norton Trevisan Roman (20)

(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24(ACH2044) Inteligência Artificial - Aula 24
(ACH2044) Inteligência Artificial - Aula 24
 
(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23(ACH2044) Inteligência Artificial - Aula 23
(ACH2044) Inteligência Artificial - Aula 23
 
(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22(ACH2044) Inteligência Artificial - Aula 22
(ACH2044) Inteligência Artificial - Aula 22
 
(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21(ACH2044) Inteligência Artificial - Aula 21
(ACH2044) Inteligência Artificial - Aula 21
 
(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20(ACH2044) Inteligência Artificial - Aula 20
(ACH2044) Inteligência Artificial - Aula 20
 
(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19(ACH2044) Inteligência Artificial - Aula 19
(ACH2044) Inteligência Artificial - Aula 19
 
(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18(ACH2044) Inteligência Artificial - Aula 18
(ACH2044) Inteligência Artificial - Aula 18
 
(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17(ACH2044) Inteligência Artificial - Aula 17
(ACH2044) Inteligência Artificial - Aula 17
 
(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16(ACH2044) Inteligência Artificial - Aula 16
(ACH2044) Inteligência Artificial - Aula 16
 
(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15(ACH2044) Inteligência Artificial - Aula 15
(ACH2044) Inteligência Artificial - Aula 15
 
(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14(ACH2044) Inteligência Artificial - Aula 14
(ACH2044) Inteligência Artificial - Aula 14
 
(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13(ACH2044) Inteligência Artificial - Aula 13
(ACH2044) Inteligência Artificial - Aula 13
 
(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12(ACH2044) Inteligência Artificial - Aula 12
(ACH2044) Inteligência Artificial - Aula 12
 
(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11(ACH2044) Inteligência Artificial - Aula 11
(ACH2044) Inteligência Artificial - Aula 11
 
(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10(ACH2044) Inteligência Artificial - Aula 10
(ACH2044) Inteligência Artificial - Aula 10
 
(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09(ACH2044) Inteligência Artificial - Aula 09
(ACH2044) Inteligência Artificial - Aula 09
 
(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08(ACH2044) Inteligência Artificial - Aula 08
(ACH2044) Inteligência Artificial - Aula 08
 
(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07(ACH2044) Inteligência Artificial - Aula 07
(ACH2044) Inteligência Artificial - Aula 07
 
(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06(ACH2044) Inteligência Artificial - Aula 06
(ACH2044) Inteligência Artificial - Aula 06
 
(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05(ACH2044) Inteligência Artificial - Aula 05
(ACH2044) Inteligência Artificial - Aula 05
 

Último

CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreElianeElika
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?AnabelaGuerreiro7
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memorialgrecchi
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxDianaSheila2
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdflucassilva721057
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptMaiteFerreira4
 
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresAnaCarinaKucharski1
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOAulasgravadas3
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 

Último (20)

CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestreCIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
CIÊNCIAS HUMANAS - ENSINO MÉDIO. 2024 2 bimestre
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
Libras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS MemoriaLibras Jogo da memória em LIBRAS Memoria
Libras Jogo da memória em LIBRAS Memoria
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
Atividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptxAtividade sobre os Pronomes Pessoais.pptx
Atividade sobre os Pronomes Pessoais.pptx
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Literatura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.pptLiteratura Brasileira - escolas literárias.ppt
Literatura Brasileira - escolas literárias.ppt
 
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos DescritoresATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
ATIVIDADE PARA ENTENDER -Pizzaria dos Descritores
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 

(ACH2044) Sistemas Operacionais - Aula 06

  • 1. Aula 06 – Escalonamento de Processos Norton Trevisan Roman 28 de agosto de 2017 Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 1 / 38
  • 2. Sistemas Interativos Algoritmos para Escalonamento: Round-Robin (Alternˆancia Circular, ou Revezamento) Prioridade M´ultiplas Filas Shortest Process Next Garantido Lottery Fair-Share Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 2 / 38
  • 3. Sistemas Interativos: Algoritmos Round-Robin: Antigo, mais simples e mais utilizado Preemptivo Cada processo recebe uma fatia de tempo de execu¸c˜ao chamado quantum Os processos s˜ao ent˜ao colocados em uma fila circular (de prontos) e executados um-a-um Quando seu tempo acaba, o processo ´e suspenso e volta para o final da fila Outro processo (primeiro da fila) ´e ent˜ao colocado em execu¸c˜ao Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 3 / 38
  • 4. Sistemas Interativos: Algoritmos Round-Robin: Quando um processo solicita E/S, vai para a fila de bloqueados e, ao terminar a opera¸c˜ao, volta para o final da fila de prontos Se o processo terminar antes do fim do quantum, o pr´oximo na fila ´e escolhido Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 4 / 38
  • 5. Sistemas Interativos: Algoritmos Round-Robin: Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 5 / 38
  • 6. Sistemas Interativos: Algoritmos Round-Robin: Quando um processo ´e removido da CPU e outro escalonado, quanto tempo este tem para rodar? Se o hardware do clock permitir programa¸c˜ao de tempo O SO pode estabelecer um novo quantum para o novo processo → ele ter´a um quantum inteiro A interrup¸c˜ao do clock ser´a gerada somente ap´os esse tempo passar Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 6 / 38
  • 7. Sistemas Interativos: Algoritmos Round-Robin: Se ele n˜ao permitir programa¸c˜ao O SO n˜ao tem controle sobre as interrup¸c˜oes do clock O processo ´e escalonado e ser´a interrompido quando vier a interrup¸c˜ao do clock → receber´a somente o resto do quantum do processo anterior Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 7 / 38
  • 8. Sistemas Interativos: Algoritmos Round-Robin: Exemplo (quantum = 2ut) Tempo m´edio de execu¸c˜ao (turnaround m´edio): T = t1 + t2 + t3 + t4 4 = (13 − 0) + (4 − 0) + (12 − 1) + (14 − 3) 4 = 39 4 = 9, 75ut Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 8 / 38
  • 9. Sistemas Interativos: Algoritmos Round-Robin: Exemplo (quantum = 2ut) Evolu¸c˜ao da fila de prontos Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 9 / 38
  • 10. Sistemas Interativos: Algoritmos Round-Robin: Problemas: Tempo de chaveamento de contexto (salvar e carregar registradores, mapas de mem´oria etc.) Processos I/O-Bound (que realizam opera¸c˜oes de E/S) s˜ao prejudicados – usam pouco a CPU e quando retornam de uma opera¸c˜ao v˜ao para o final da fila Como E/S ´e demorada, processos I/O-Bound podem n˜ao voltar na mesma posi¸c˜ao e at´e mesmo perder v´arias voltas Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 10 / 38
  • 11. Sistemas Interativos: Algoritmos Round-Robin: Qual deve ser o tamanho do quantum? Se for muito pequeno, ocorrem muitas trocas → diminui a eficiˆencia da CPU Se for muito longo, ser´a como o first come, first served Overhead overhead = ttroca contexto tquantum + ttroca contexto Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 11 / 38
  • 12. Sistemas Interativos: Algoritmos Round-Robin: Qual o tamanho do quantum? Quantum = 4ms Se o chaveamento levar 1ms, dos 5ms totais, 20% de tempo de CPU ´e perdido na troca de processos (ou seja, tarefas administrativas) Quantum = 99 ms Tempo de espera dos processos pela vez de rodar ´e maior, j´a que a fatia de tempo dada a cada um deles ´e grande Com 1ms de chaveamento gastamos 1% do tempo total de CPU no chaveamento → em 10 processos, o d´ecimo levar´a quase 1s para iniciar Quantum razo´avel: 20-50ms Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 12 / 38
  • 13. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Cada processo possui uma prioridade Os processos prontos com maior prioridade s˜ao executados primeiro (a fila ´e ordenada por prioridade) Round Robin pressup˜oe igual prioridade para todos os processos Prioridades s˜ao atribu´ıdas estatica (pelo usu´ario. Ex: nice) ou dinamicamente (pelo sistema, ou pelo usu´ario. Ex: renice) Preemptivo Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 13 / 38
  • 14. Sistemas Interativos: Algoritmos Escalonamento por Prioridades – Ex: (quanto maior, maior a prioridade) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 14 / 38
  • 15. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Como evitar que os processos com maior prioridade sejam executados indefinidamente? Diminuir a prioridade do processo em execu¸c˜ao a cada interrup¸c˜ao do clock (Ex: cr´editos do Linux) Se isso fizer dele o segundo na fila, troc´a-lo pelo pr´oximo processo com maior prioridade (chaveamento) Alternativamente: Cada processo possui um quantum m´aximo (n˜ao necessariamente igual) para rodar Quando terminar o quantum, o segundo mais alto em prioridade rodar´a Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 15 / 38
  • 16. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 17. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 18. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 19. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 20. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 21. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) B j´a rodava, continua B(2) A(3) C(3) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 22. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) B j´a rodava, continua B(2) A(3) C(3) D(2) B perde a prioridade A(3) C(3) B(2) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 23. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) B j´a rodava, continua B(2) A(3) C(3) D(2) B perde a prioridade A(3) C(3) B(2) D(2) roda A novamente A(2) C(3) B(2) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 24. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) B j´a rodava, continua B(2) A(3) C(3) D(2) B perde a prioridade A(3) C(3) B(2) D(2) roda A novamente A(2) C(3) B(2) D(2) A perde a prioridade C(3) A(2) B(2) D(2) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 25. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) B j´a rodava, continua B(2) A(3) C(3) D(2) B perde a prioridade A(3) C(3) B(2) D(2) roda A novamente A(2) C(3) B(2) D(2) A perde a prioridade C(3) A(2) B(2) D(2) roda C Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 26. Sistemas Interativos: Algoritmos Escalonamento por Prioridades Exemplo (decremento com interrup¸c˜ao do clock): A(5) B(4) C(3) D(2) roda A A(4) B(4) C(3) D(2) A j´a rodava, continua A(3) B(4) C(3) D(2) A perde a prioridade B(4) A(3) C(3) D(2) roda B B(3) A(3) C(3) D(2) B j´a rodava, continua B(2) A(3) C(3) D(2) B perde a prioridade A(3) C(3) B(2) D(2) roda A novamente A(2) C(3) B(2) D(2) A perde a prioridade C(3) A(2) B(2) D(2) roda C Quando todas as prioridades zerarem, elas s˜ao redistribu´ıdas Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 16 / 38
  • 27. Sistemas Interativos: Algoritmos Classes de Prioridades O que acontece se v´arios processos tiverem a mesma prioridade? Podemos agrup´a-los em classes de prioridade Usa prioridade entre as classes e Round Robin dentro delas Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 17 / 38
  • 28. Sistemas Interativos: Algoritmos Classes de Prioridades Enquanto houver processos execut´aveis na classe maior: Rode cada um de seus processos usando Round Robin (quantum fixo de tempo) Se essa classe n˜ao tiver mais processos para executar: Passe `a de prioridade imediatamente inferior Deve-se ajustar as prioridades ocasionalmente Do contr´ario, as menos priorit´arias morrer˜ao de fome – starvation Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 18 / 38
  • 29. Sistemas Interativos: Algoritmos Classes de Prioridades Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 19 / 38
  • 30. Sistemas Interativos: Algoritmos Classes de Prioridades Mais f´acil de atualizar a fila de prioridade com processos novos – menos compara¸c˜oes Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 20 / 38
  • 31. Sistemas Interativos: Algoritmos Classes de Prioridades Windows (6 classes) Baixa ou ociosa Abaixo do normal Normal Acima do normal Alta Tempo-real Linux (2 escalas) Tarefas interativas Tarefas de tempo-real N˜ao usam round robin, mas prioridade dentro de cada classe. Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 21 / 38
  • 32. Sistemas Interativos: Algoritmos Classes de Prioridades: Linux SHED FIFO e SHED RR (round robin): tarefas de tempo-real SCHED OTHER: demais tarefas Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 22 / 38
  • 33. Sistemas Interativos: Algoritmos M´ultiplas Filas (IBM 7094): Preemptivo Varia¸c˜ao das classes de prioridades ´Util quando se tem pouca mem´oria O que geraria chaveamento constante para disco Define classes de prioridades Processos pertencem a uma classe espec´ıfica Uma fila de processos por classe Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 23 / 38
  • 34. Sistemas Interativos: Algoritmos M´ultiplas Filas (IBM 7094): Cada classe de prioridades possui quanta diferentes Processos na classe mais alta, rodam um quantum Os das classes seguintes, por 2, e ent˜ao por 4, 8, 16 etc Se um processo usar todos os quanta alocados a ele, ´e rebaixado uma classe A ´ultima classe roda com Round Robin Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 24 / 38
  • 35. Sistemas Interativos: Algoritmos M´ultiplas Filas: Cada vez que um processo ´e executado e suspenso ele recebe mais tempo para execu¸c˜ao Inicialmente recebe 1 quantum, e ´e suspenso Ent˜ao muda de classe e recebe 2, sendo suspenso; Muda novamente de classe e recebe 4, 8, 16 etc Reduz o n´umero de trocas de processo Os mais curtos terminam logo Aos mais longos ´e dado mais tempo, progressivamente Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 25 / 38
  • 36. Sistemas Interativos: Algoritmos M´ultiplas Filas: Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 26 / 38
  • 37. Sistemas Interativos: Algoritmos M´ultiplas Filas: Ex.: um processo precisa de 100 quanta para ser finalizado Inicialmente, ele recebe um quantum para execu¸c˜ao Das pr´oximas vezes ele recebe, respectivamente, 2, 4, 8, 16, 32 e 64 quanta (7 chaveamentos) para execu¸c˜ao (em vez de 100, com round robin) Quanto mais pr´oximo de ser finalizado, menos frequente (embora mais demorado) ´e o processo na CPU Mais ele desce na fila de prioridade Eficiˆencia → os pequenos e r´apidos ainda tem vez Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 27 / 38
  • 38. Sistemas Interativos: Algoritmos M´ultiplas Filas: As classes podem ser criadas de v´arias maneiras Ex: 4 classes (Berkeley – XDS 940) Terminal (mais alta): processos esperando entrada de terminal (quando recebesse a entrada) E/S: processos esperando E/S do disco (que ficou pronto) Quantum curto: processos cujo quantum terminou Quantum longo: processos que terminassem seu quantum v´arias vezes sem serem bloqueados pelo terminal ou outra E/S Favorece usu´arios interativos mais que processos em segundo plano Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 28 / 38
  • 39. Sistemas Interativos: Algoritmos Shortest Process Next Mesma ideia do Shortest Job First Executa-se a tarefa mais curta primeiro Problema: em processos interativos n˜ao se conhece o tempo necess´ario para execu¸c˜ao Como empregar esse algoritmo: ESTIMATIVA de TEMPO! Com base em execu¸c˜oes antigas da mesma tarefa Verificar o comportamento passado do processo e estimar o tempo. Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 29 / 38
  • 40. Sistemas Interativos: Algoritmos Shortest Process Next E se tarefas curtas n˜ao pararem de chegar? Inani¸c˜ao Solu¸c˜ao: envelhecimento (aging) T0 – tempo estimado para um determinado processo T1 – tempo medido de sua execu¸c˜ao Nova estimativa para o mesmo processo: aT0 + (1 − a)T1, com a = 1 2 , por exemplo Estima o valor seguinte da s´erie a partir da m´edia ponderada do valor sendo medido e a estimativa anterior Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 30 / 38
  • 41. Sistemas Interativos: Algoritmos Escalonamento Garantido Garantias s˜ao dadas aos processos dos usu´arios n processos → 1 n do tempo de CPU para cada processo Mant´em registro do total de CPU que cada processo j´a usou Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 31 / 38
  • 42. Sistemas Interativos: Algoritmos Escalonamento Garantido Calcula a quantidade destinada a cada um (o quanto teoricamente deveria ter usado) Ex: tempo desde a cria¸c˜ao ÷ n Compara com o tempo que efetivamente usou Se um processo j´a teve mais que deveria, um outro, que teve menos, ser´a escolhido Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 32 / 38
  • 43. Sistemas Interativos: Algoritmos Escalonamento por Loteria Cada processo recebe “bilhetes” que lhe d˜ao direito a recursos do sistema (inclusive processador) Fatias de processamento iguais por bilhete Quando um escalonamento deve ser feito, escolhe-se aleatoriamente um bilhete, e seu dono conseguir´a o recurso Processos mais importantes podem receber mais bilhetes Processos que detenham uma fra¸c˜ao f dos bilhetes obter˜ao uma fra¸c˜ao f dos recursos (aproximadamente) Processos podem doar bilhetes para colabora¸c˜ao com outros (e recebˆe-los de volta depois, quando o outro processo doar a ele) Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 33 / 38
  • 44. Sistemas Interativos: Algoritmos Escalonamento por Loteria Precisa garantir que todos ter˜ao sua vez de rodar Um modo ´e manter duas listas: Bilhetes j´a sorteados Bilhetes ainda n˜ao sorteados Quando a lista de n˜ao sorteados se esvazia, os bilhetes da lista de sorteados s˜ao transferidos a ela, reiniciando o processo S˜ao ideais quando se quer “fracionar” o uso da CPU entre v´arios processos, a taxas diferentes Basta dar a mesma propor¸c˜ao em bilhetes Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 34 / 38
  • 45. Sistemas Interativos: Algoritmos Escalonamento por Fra¸c˜ao Justa (Fair Share) `A exce¸c˜ao do fair share, em geral o dono do processo n˜ao ´e levado em conta: Se um usu´ario A possui 9 processos, e um usu´ario B 1, o usu´ario A ganha 90% do uso da CPU, com round-robin Fair share: O tempo de CPU ´e alocado ao usu´ario Se a um usu´ario foi prometido uma certa fatia de tempo, ele a receber´a, independentemente do n´umero de processos Extens˜ao do algoritmo garantido N˜ao necessariamente usa 1/n Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 35 / 38
  • 46. Sistemas Interativos: Algoritmos Escalonamento por Fra¸c˜ao Justa (Fair Share) Exemplo: Usu´ario 1 → A, B, C, D Usu´ario 2 → E Foi prometido 50% da CPU a cada um, e ´e usado Round Robin: A, E, B, E, C, E, D, E, A, E, ... (poss´ıvel escolha) Se 2/3 deve ir ao Usu´ario 1: A, B, E, C, D, E, A, B, E, ... Tudo depende da no¸c˜ao de “justi¸ca” do sistema Se ´e propor¸c˜ao do tempo, n´umero de tarefas etc Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 36 / 38
  • 47. Sistemas de Tempo Real Para obter comportamento em tempo real: Programas s˜ao divididos em v´arios processos Cada um previs´ıvel e geralmente r´apido Eventos causam a execu¸c˜ao de processos: Quando um evento externo ´e detectado, cabe ao escalonador arrumar os processos de modo que todos os prazos sejam cumpridos Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 37 / 38
  • 48. Sistemas de Tempo Real Eventos podem ser classificados como: Peri´odicos: ocorrem em intervalos regulares de tempo Aperi´odicos: acontecem de modo imprevis´ıvel Dependendo do tempo necess´ario para cada evento, pode n˜ao ser poss´ıvel processar todos em tempo Temos ent˜ao um sistema n˜ao escalon´avel Norton Trevisan Roman Aula 06 – Escalonamento de Processos 28 de agosto de 2017 38 / 38