escalonamento
Escalonamento de processos Escalonamento
•
•
•
•
Critérios de escalonamento
Algoritmos de escalonamento
Escalonamento em multiprocessadores
Escalonamento tempo real
1
Características de processos
• Multiprogramação possibilita a máxima utilização da CPU
• Processo:utilização da CPU e E/S
• Distribuição da utilização da CPU
Algoritmo de escalonamento
• Seleciona entre os processos prontos e na memória, qual irá ganhar a CPU
• O escalonamento pode ocorrer:
1. Um processo passa do estado executando para o estado espera (p. exemplo, o processo solicita uma operação de E/S)
2. Um processo passa do estado executando para o estado pronto
3. Um processo passo do estado espera para pronto
4. Um processo é finalizado
• Escalonamento nas alternativas 1 e 4 é denominado não-preemptivo (nonpreemptive)
• As outras opções são denominadas preemptivo
(preemptive)
2
Critérios para o escalonamento
• Utilização da CPU – utilizar o máximo da CPU
• Throughput – número de processos finalizados em um dado intervalo de tempo
• Tempo de execução – tempo para finalizar a execução de um determinado processo no sistema
• Tempo de espera – quantidade de tempo que o processo ficou na fila de prontos
• Tempo de resposta – tempo entre a requisição e a saída do primeiro resultado (sistemas interativos)
Otimizações
•
•
•
•
•
Utilização máxima da CPU
Throughput máximo
Tempo de execução mínimo
Tempo de espera mínimo
Tempo de resposta mínimo
3
FCFS (First-come, first-served)
• Primeiro a chegar, primeiro a ser servido (sistemas não preeemptivos)
Process
P1
P2
P3
Burst Time
24
3
3
• A ordem de chegada dos processos é P1, P2, P3. O gráfico de
Gantt para esse algoritmo é:
P1
P2
0
24
P3
27
30
• Tempo de espera P1 = 0; P2 = 24; P3 = 27
• Tempo médio de espera: (0 + 24 + 27)/3 = 17
FCFS(2)
• Considerando a ordem de chegada P2, P3, P1
• O gráfico de Gantt
P2
0