ESCALONAMENTO DE CPU
Antônio Vitor Santos Reis
Lucas César Marques
Luiz Fellipe Souza Ferreira
Rafael Domingos
SHORTEST JOB FIRST O SJF (Shortest Job First ou Processo mais curto primeiro) é um algoritmo de escalonamento que executa, dentre processos igualmente importantes, o mais curto primeiro. Com isso o processador consegue executar mais processos em menos tempo, tendo em vista que sempre vai executar os mais curtos primeiro. Pode ser provado matematicamente que esta estratégia sempre proporciona os menores tempos médios de espera.
O cálculo de cada tempo médio é feito a partir da próxima alocação de CPU, ou seja, o processo que utilizar a CPU por menos tempo será executado primeiro. SHORTEST JOB FIRST NÃO-PREEMPTIVO Quando ele é executado de forma não-preemptiva, a CPU vai executar o processo com o menor tempo de alocação e não inicia outro processo até que esse acabe.
PROCESSO
TEMPO DE CHEGADA
TEMPO DE ALOCAÇÃO
P1
0
8
P2
1
5
P3
3
1
P4
6
4
Inicio do Processo
0 8 9 13 18 P1 P3 P4 P2
0 1 3 6
Neste exemplo, o processador vai executar o processo um, que chega na unidade de tempo 0, como ele é não-preemptivo(sem interrupções), o processo um que possui 8 unidades de tempo vai acabar e o próximo a ser executado é o processo três, pois ele é o mais curto entre os outros processos, seguido dos processos quatro e por último o processo dois.
PROCESSO
TEMPO DE ESPERA
(IP – TC)
TEMPO DE RESPOSTA
(TA+TE)
P1
0-0=0
8+0=8
P2
13-1=12
5+12=15
P3
8-3=5
1+5=6
P4
9-6=3
4+3=7
O tempo de espera é calculado subtraindo o tempo de início do processo pelo tempo de chegada, assim conseguimos saber quanto tempo o processo esperou até ser executado.
O tempo de resposta calculamos usando o tempo de espera mais o tempo de alocação, que é o