Please enable JavaScript.
Coggle requires JavaScript to display documents.
Escalonamento de CPU (Escalonamento em multiplos processadores…
Escalonamento de CPU
Escalonamento em multiplos processadores
Multiprocessamento simétrico
Processador auto-escalonado
1 escalonador - 1 processo
win 2000 + , linux e Mac OS X
Afinidade de processador
Flexivel
Evita troca de processo da CPU
Rigida
"Processo só usa a mesma CPU"
Problema - Inflexibilidade
Sobrecarregar CPU
Multiprocessamento assimétrico
Não tem compartilhamento de dados
Um processador -> ED do sistema
Processador único
decisão de escalonamento
Outras atividades
processamento E/S
Escalonamento de thread
Threads usuario
tratada pela biblioteca de thread
Mapeado pelo kernel
LWP (processo level)
thread kernel
escalonada pelo SO
Processadores homogêneos
nucleos com mesma funcionalidade
multithreading simétrico
simultaneous multithreading
1 processo - 1 estado arquitetônico
tratamento de interrupção
Multiplos processadores logicos - Um processador fisico
compartilha recursos do processador fisico
SO mostra só os logicos
Compartilhamento de carga
Destribui unififormemente a carga de trabalho
multiplas cpus
Pull
"Processador ocioso puxa tarefa de um processador ocupado"
Push
"Tarefa verifica periodicamente carga do processador"
"Burro do shrek - Ja chegamo?"
Critérios de escalonamento
Utilização CPU
40% lightly loaded system
90% heavily loaded system
vazão
processo/unit tempo
tempo de turnaround
Tempo de execução
tempo de espera
Espera fila pronto
tempo de resposta
Escalonamento por prioridade
CPU alocada
maior prioridade
Starvation
Baixa prioridade
"pode nunca ser executado"
Aging
Solução do starvation
Tempo aumenta prioridade
envelhecimento
estagnação
"Aluno de TCC usando cluster"
Prioridade(int) associado a processo
Menor inteiro, maior prioridade
Roundin Robin
SO de tempo compartilhado
Quantum tempo (q)
unidade de tempo por processo
"processo Preemptado depois que o tempo passa"
Final da fila
Q grande -> FIFO
Q pequeno -> Overhead alto
Muitas trocas de contexto
Multiplas filas
Flexibilização do algoritmo
Cada fila tem seu algoritmo
Escalonamento por fila
Prioridade fixa
Possivel starvation
Fatias de tempo
Feedback
Define numero de fila
"Pode implementa agging"
CONCEITOS BASICOS
Ciclo CPU Burst
CPU Burst
I/O event
Agendador de CPU
CPU Ocioso
Agendador
curto prazo/ CPU
Agendador preemptivo
Interromper
concluir operação/evento
Não PREEMPTIVO
Terminar
Esperar evento de I/O
Condição de corrida
Despachante
Controle CPU (Processo)
Agendador de curto Prazo
Latência de Despache
Algoritmo de escalonamento
First come, first served(FCFS)
"FIFO"
Baixa complexidade
Termina execução
Favorece CPU/Bound
"OverHead"
Pequenos processos esperam demais.
Não é usado em sistema de tempo compartilhado
Final da fila
Processos elegiveis(fila do pronto)
Shortest job first(SJF)
Não preemptiva
Processo apropria CPU
tempo de burst
"Não apropria outro até acabar o atual"
Preemptiva
Shortest remaining time first(SRTF)
Apropria menor processo (CPU BURST)
"Tira do atual e da pro outro que é menor"
Não sabe o CPU burst da proxima
Efeito comboio
Processo curto primeiro
Maior vazão
menor tempo de espera
Privilegio a processos pequenos
"Ideal"