6 Escalonamento de Processos
6 ESCALONAMENTO DE CPU
O escalonamento de CPU é ponto chave da multiprogramação. Ela permite que haja mais de um processo em execução ao mesmo tempo. Em ambientes com um único processador, o escalonador realiza o revezamento de uso do processador pelos processos, tornando-o mais eficiente. Muitas vezes, eles têm diferentes fluxos de execução, com uso de diferentes recursos e em diferentes épocas.
6.1 INTRODUÇÃO
O objetivo da multiprogramação é aumentar o índice de aproveitamento da
CPU. Ela tenta sempre deixar a CPU ocupada com algum processo. Ele aproveita as operações de I/O, onde a CPU não é utilizada e poderia ficar ociosa para colocar um outro processo em execução. O escalonamento é muito importante para o
Sistema Computacional, praticamente qualquer recurso pode ser escalonado.
6.1.1 CICLO DE SURTO DE CPU E I/O
Estas duas características se referem ao fato de que um processo tem intervalos de uso de CPU e I/O. Toda vez que um processo nesta usando a CPU é dito que é um surto de CPU e é um surto de I/O quando ele está em uma operação dessa natureza.
Tais características fazem haver duas categorias:
Um processo que tem muitas operações de I/O terá muitos surtos curtos de
CPU;
Um programa que usa muito usa muito a CPU terá poucos surtos de I/O, mas serão longos.
6.1.2 ESCALONADOR DE CPU
O escalonador é um processo do Sistema Operacional que seleciona um dos processos que está no estado “PRONTO”. Um dos pontos importantes é que nem sempre o primeiro da fila é o primeiro a ser atendido.
6.1.3 ESCALONAMENTO PREEMPTIVO
As decisões de escalonamento de CPU podem ocorrer de quatro maneiras:
1. Quando o processo passa do estado de execução para o estado de espera
(bloqueado);
2. Quando um processo passa do estado de execução para o estado pronto;
WILIAM HIROSHI HISATUGU
SISTEMAS OPERACIONAIS
3. Quando um processo passa do estado bloqueado para o estado pronto;
4. Quando um processo termina.
Nos casos 1 e 4 há obrigatoriamente a troca de