So Glue 2
É a selação de processos em espera na fila do porcessador e aloca a CPU para tal processo. O processo é selecionado de acordo com o algoritmo de escalonamento implementado pelo S.O em uso.
Objetivo:
- Manter o processador em execução maxima
- Vários processos são mantidos na memória ao mesmo tempo. Qaundo um processo precisa esperar, outro processo é passado para a CPU.
Não preemptivo:
O algoritmo escolhe o processo para executar até que seja bloqueado ( para I\O) ou voluntariamente libere a CPU
Ex: Windows 3x
Sistema não tem capacidade de mandar dois processos ao mesmo tempo.
Preemptivo:
O algoritmo escolhe um processo e o deixa em execução por um tempo (quantum) máximo fixado.
Ex: Windows 95 ou superior
Multitarefa e pode separar os processos, um pouco de um e pouco de outro.
- QUANDO ESCALONAR?
-> Quando o processo passa de estado em execução para estado de espera ( Ex: um pedido de I\O ou uma dependencia de dispositivo)
Conceito básico:
Timer: Escalonamento preemptive, controla o tempo que o processo pode ficar em execução. Mede o Quantum.
Dispatcher(executor): Módulo que dá o controle da CPU ao processo selecionado. O dispatcher é chamado a cada troca de processo.
Throughput: é a quantidade de processos executados por unidade de tempo. É a vazão.
Tempo de retorno: o intervalo entre as submissão de um processo ate o seu tempo de conclusão
Tempo de espera: é a soma de periodos gastos esperando na fila de processos prontos
Tempo de resposta: é o tempo que o processo leva para começar a responder a um comando do usuario.
Algoritimos
FCFS ( first come, first served) FIFO
Processo duração de surto
P1 24
P2 3
P3 3
Diagrama de Gantt P!pp
0 24 27 30
Tempo médio:
(0+24+27)/3 = 17ms
Escalonamento por prioridade( sist. Interativos)
Processo duração de surto prioridade
P1 24 3
P2 3 1
P3 3