Agendamento de processos no sistema operacional: agendador de longo, médio e curto prazo
⚡ Resumo Inteligente
O escalonamento de processos é uma tarefa do sistema operacional que gerencia os processos em seus estados de pronto, espera e execução. Ele aloca tempo de CPU para cada processo, mantém a CPU ocupada e reduz o tempo de resposta usando escalonadores de longo, médio e curto prazo.

O que é agendamento de processos?
Agendamento de Processos É uma tarefa do sistema operacional que agenda processos em diferentes estados, como pronto, aguardando e em execução.
O escalonamento de processos permite que o sistema operacional aloque um intervalo de tempo de execução da CPU para cada processo. Outro motivo importante para usar um sistema de escalonamento de processos é que ele mantém a CPU ocupada o tempo todo. Isso permite obter o menor tempo de resposta possível para os programas.
Filas de agendamento de processos
As filas de agendamento de processos ajudam a manter uma fila distinta para cada estado de processo e PCB (Código de Processo de Ação). Todos os processos com o mesmo estado de execução são colocados na mesma fila. Portanto, sempre que o estado de um processo é modificado, seu PCB precisa ser desvinculado da fila existente e movido de volta para a fila do novo estado.
Três tipos de filas do sistema operacional são:
- Fila de trabalho – Ajuda a armazenar todos os processos do sistema.
- fila de pronto – Este tipo de fila ajuda a definir cada processo residente na memória principal, que está pronto e aguardando para ser executado.
- Filas de dispositivos – É um processo que está bloqueado devido à ausência de um dispositivo de E/S.

No diagrama acima:
- Um retângulo representa uma fila.
- Um círculo representa o recurso.
- Uma seta indica o fluxo do processo.
- Cada novo processo é inicialmente colocado na fila de prontos. Ele aguarda na fila de prontos até que seja finalmente processado para execução. Aqui, o novo processo é colocado na fila de prontos e aguarda até ser selecionado para execução, ou seja, até ser despachado.
- Um dos processos recebeu a CPU e está em execução.
- O processo deve emitir uma solicitação de E/S.
- Em seguida, deve ser colocado na fila de E/S.
- O processo deve criar um novo subprocesso.
- O processo deve estar aguardando seu encerramento.
- Deve ser removido à força da CPU, como resultado de uma interrupção. Assim que a interrupção for concluída, deve ser enviado de volta para a fila de prontos.
Modelo de Processo de Dois Estados
Os modelos de processo de dois estados são:
- Estado de execução
- Estado sem execução
Corrida
De acordo com o relatório Operasistema ting, sempre que um novo processo é construído, ele é inserido no sistema, que deverá estar em execução.
Não está funcionando
Os processos que não estão em execução são mantidos em uma fila, aguardando sua vez de serem executados. Cada entrada na fila representa um processo específico.
Objetivos de programação
Aqui estão os objetivos importantes do planejamento de processos:
- Maximize o número de usuários interativos dentro de tempos de resposta aceitáveis.
- Alcance um equilíbrio entre resposta e utilização.
- Evite adiamentos indefinidos e imponha prioridades.
- Também deve fazer referência aos processos que detêm os principais recursos.
Tipo de agendadores de processos
Um agendador é um tipo de software de sistema que permite gerenciar o agendamento de processos.
Existem basicamente três tipos de agendadores de processos:
- Agendador de longo prazo
- Agendador de Curto Prazo
- Agendador de Médio Prazo
Agendador de longo prazo
O planejador de longo prazo também é conhecido como agendador de trabalhoEste agendador regula o programa, selecionando processos da fila e carregando-os na memória para execução. Ele também regula o grau de multiprogramação.
No entanto, o principal objetivo desse tipo de agendador é oferecer uma combinação equilibrada de tarefas, como tarefas de processador e de E/S, que permita o gerenciamento da multiprogramação.
Agendador de Médio Prazo
A programação de médio prazo é uma parte importante do trocarpingEle permite lidar com os processos que foram trocados de memória. Nesse agendador, um processo em execução pode ser suspenso, o que gera uma solicitação de E/S.
Um processo em execução pode ser suspenso se fizer uma solicitação de E/S. Um processo suspenso não pode progredir em direção à sua conclusão. Para remover o processo da memória e liberar espaço para outros processos, o processo suspenso deve ser movido para o armazenamento secundário.
Agendador de Curto Prazo
O planejamento de curto prazo também é conhecido como agendador de CPUO principal objetivo deste agendador é aumentar o desempenho do sistema de acordo com critérios predefinidos. Ele permite selecionar, dentre um grupo de processos prontos para execução, aqueles que estão prontos para serem executados, e alocar a CPU para um deles. O despachante concede o controle da CPU ao processo selecionado pelo agendador de curto prazo.
Diferença entre agendadores
Longo prazo vs. curto prazo vs. médio prazo:
| Longo prazo | Curto prazo | Termo médio |
|---|---|---|
| O termo "longo prazo" também é conhecido como agendador de tarefas. | O termo "curto prazo" também é conhecido como agendador de CPU. | O prazo médio também é chamado de swap.ping Agendador. |
| É ausente ou mínimo em um sistema de compartilhamento de tempo. | É insignificante na ordem de compartilhamento de tempo. | Este escalonador é um elemento dos sistemas de compartilhamento de tempo. |
| A velocidade é menor em comparação com o agendador de curto prazo. | A velocidade é a mais rápida em comparação com o escalonador de curto e médio prazo. | Oferece velocidade média. |
| Permite selecionar processos da carga e do pool de volta para a memória. | Ele seleciona apenas os processos que estão em estado de pronto para execução. | Isso ajuda a enviar o processo de volta para a memória. |
| Oferece controle total. | Oferece menos controle. | Reduz o nível de multiprogramação. |
O que é mudança de contexto?
É um método para armazenar/restaurar o estado de uma CPU na placa de circuito impresso (PCB), permitindo que a execução do processo seja retomada do mesmo ponto posteriormente. O método de troca de contexto é importante para um sistema operacional multitarefa.
