Please enable JavaScript.
Coggle requires JavaScript to display documents.
Escalonamento da CPU - Coggle Diagram
Escalonamento da CPU
Algoritmos de Escalonamento
First Come, First Served (FCFS)
Algoritmo de baixa complexidade.
Abordagem não-preemptiva
Favorece processos CPU-bound
Execução
Executa até terminar a execução, ou realizar uma chamada ao sistema
Dificuldades
Algoritmo problemático para
sistemas de tempo compartilhado
Processos I/O-bound têm que esperar até que
processos CPU-bound terminem a sua execução
Shortest Job First (SJF)
Privilegiando processos pequenos o tempo
médio de espera decresce
Associa a cada processo a extensão de seu próximo burst de CPU
Gera o menor tempo de espera médio para
determinado conjunto de processos
Esquema preemptivo
se um novo processo chega com tamanho de burst de CPU menor que o tempo restante do processo atualmente em execução, apropria. Esse esquema é conhecido como Shortest
Remaining Time First (SRTF)
Esquema não preemptivo
uma vez a CPU dada ao processo, ele não pode
ser apropriado até que termine seu burst de CPU.
Dificuldades
SJF real é impossível de ser implementado.Mas é possível aproximá-lo usando uma previsão do próximo burst de CPU
Saber a extensão dapróxima requisição de CPU
Escalonamento por Prioridade
Um número de prioridade (inteiro) é associado a cada processo
SJF é um escalonamento por prioridade onde a prioridade é o próximo tempo de burst de CPU previsto
Envelhecimento (aging)
– à medida que o tempo
passa, aumenta a prioridade do processo
Dificuldades
Estagnação (starvation)
– processos com baixa
prioridade podem nunca ser executados
Execução
A CPU é alocada ao processo com a maior prioridade
Round Robin
Execução
Cada processo recebe uma pequena unidade de tempo de CPU (quantum de tempo), normalmente 10-100 milissegundos
Dsempenho
q
grande → FIFO
q pequeno → q deve ser grande com relação à troca de contexto, ou então o overhead é muito alto
Algoritmo típico de sistemas operacionais de tempo compartilhado
Multilevel Queue
Fila de pronto está particionada em duas filas separadas.
Execução
Escalonamento com prioridade fixa; (ou seja, serve tudo em primeiro plano, depois em segundo plano). Possibilidade de estagnação
Algoritimos de Escalonamento
Primeiro plano – RR
Segundo plano – FCFS
Fila Multinível com Feedback
Um processo pode mover entre as diversas filas; o
envelhecimento pode ser implementado dessa forma
Fila de Feedback
Número de filas
Algoritmos de escalonamento para cada fila
Método usado para determinar quando fazer o upgrade de um processo
Método usado para determinar quando rebaixar um processo
Método usado para determinar em qual fila um processo entrará quando esse processo precisar de serviço