Agendamento de processo: Agendador de longo, médio e curto prazo

O que é agendamento de processo?

Agendamento de Processo é uma tarefa do sistema operacional que agenda processos de diferentes estados, como pronto, em espera e em execução.

O agendamento do processo permite que o SO aloque um intervalo de tempo de execução da CPU para cada processo. Outra razão importante para usar um sistema de escalonamento de processo é que ele mantém a CPU ocupada o tempo todo. Isso permite que você obtenha o tempo mínimo de resposta para os programas.

Neste tutorial de agendamento de processo, você aprenderá:

Filas de agendamento de processos

As filas de agendamento de processos ajudam a manter uma fila distinta para cada estado de processo e PCBs. Todos os processos do 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 de sua fila existente, que volta para a nova fila de estado.

Três tipos de filas de sistema operacional são:

  1. Fila de trabalho - Ajuda a armazenar todos os processos do sistema.
  2. Fila pronta - Este tipo de fila ajuda a definir todos os processos residentes na memória principal, que estão prontos e aguardando para executar.
  3. Filas de dispositivos - É um processo que está bloqueado devido à ausência de um dispositivo de I / O.

No Diagrama fornecido acima,

  • O retângulo representa uma fila.
  • Círculo denota o recurso
  • A seta indica o fluxo do processo.
  1. Cada novo processo é colocado primeiro na fila Pronto. Ele espera na fila Pronto até que seja finalmente processado para execução. Aqui, o novo processo é colocado na fila de espera e espera até que seja selecionado para execução ou despachado.
  2. Um dos processos está alocado na CPU e está em execução
  3. O processo deve emitir uma solicitação de I / O
  4. Em seguida, ele deve ser colocado na fila de E / S.
  5. O processo deve criar um novo subprocesso
  6. O processo deve estar aguardando seu término.
  7. Ele deve ser removido com força da CPU, como resultado da interrupção. Assim que a interrupção for concluída, ela deve ser enviada de volta para a fila de espera.

Modelo de Processo de Dois Estados

Os modelos de processo de dois estados são:

  • Correndo
  • Não Correndo

Correndo

No Sistema Operacional, sempre que um novo processo é construído, ele é inserido no sistema, que deveria estar em execução.

Não Correndo

Os processos que não estão em execução são mantidos em uma fila, que aguarda sua vez de execução. Cada entrada na fila é um ponto para um processo específico.

Objetivos de programação

Aqui, estão os objetivos importantes da programação do processo

  • 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 o adiamento indefinido e faça cumprir as prioridades.
  • Ele também deve fazer referência aos processos que mantêm os recursos-chave.

Tipo de Agendadores de Processo

Um agendador é um tipo de software de sistema que permite que você controle o agendamento de processos.

Existem basicamente três tipos de Agendadores de Processo:

  1. Longo prazo
  2. Curto prazo
  3. Termo médio

Agendador de longo prazo

O agendador de longo prazo também é conhecido como um agendador de trabalho . Este escalonador regula o programa e seleciona processos da fila e os carrega na memória para execução. Também regula o grau de multiprogramação.

Porém, o objetivo principal deste tipo de escalonador é oferecer uma mistura balanceada de jobs, como Processador, jobs de E / S., Que permite gerenciar a multiprogramação.

Agendador de médio prazo

A programação de médio prazo é uma parte importante do trocando . Ele permite que você controle os processos de saída trocados. Neste escalonador, um processo em execução pode ser suspenso, o que faz uma solicitação de I / O.

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 à 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

A programação de curto prazo também é conhecida como Agendador de CPU . O principal objetivo deste agendador é aumentar o desempenho do sistema de acordo com os critérios definidos. Isso ajuda você a selecionar a partir de um grupo de processos que estão prontos para executar e alocar CPU para um deles. O despachante dá o controle da CPU ao processo selecionado pelo escalonador de curto prazo.

Diferença entre Agendadores

Longo prazo vs. Curto prazo vs. Termo médio

Longo prazo Curto prazo Termo médio
Longo prazo também é conhecido como agendador de tarefasO curto prazo também é conhecido como agendador de CPUO médio prazo também é chamado de agendador de troca.
Ele está ausente ou é mínimo em um sistema de compartilhamento de tempo.É insignificante na ordem de compartilhamento de tempo.Este planejador é um elemento dos sistemas de compartilhamento de tempo.
A velocidade é menor em comparação com o planejador de curto prazo.A velocidade é a mais rápida em comparação com o planejador de curto e médio prazo.Oferece velocidade média.
Permitem que você selecione processos das cargas e agrupe de volta na memóriaSeleciona apenas processos que estão em estado de execução pronto.Ajuda a enviar o processo de volta à memória.
Oferece controle totalOferece menos controleReduza o nível de multiprogramação.

O que é a troca de contexto?

É um método para armazenar / restaurar o estado ou de uma CPU no PCB. Para que a execução do processo possa ser retomada do mesmo ponto em um momento posterior. O método de troca de contexto é importante para sistemas operacionais multitarefa.

Resumo:

  • O agendamento de processos é uma tarefa do sistema operacional que agenda os processos de diferentes estados, como pronto, em espera e em execução.
  • Os modelos de processo de dois estados são 1) Executando e) Não Executando
  • A programação do processo maximiza o número de usuários interativos, dentro de tempos de resposta aceitáveis.
  • Um agendador é um tipo de software de sistema que permite que você controle o agendamento de processos.
  • Três tipos de programador são 1) Longo prazo 2) Curto prazo 3) Médio prazo
  • O agendador de longo prazo regula o programa e seleciona os processos da fila e os carrega na memória para execução.
  • O agendador de médio prazo permite que você lide com os processos de saída trocados.
  • O principal objetivo do agendador de curto prazo é aumentar o desempenho do sistema de acordo com os critérios definidos
  • O longo prazo também é conhecido como agendador de trabalho, enquanto o curto prazo também é conhecido como agendador de CPU e o médio prazo também é chamado de agendador de troca.