Os estados de um processo são os seguintes:

  • Novo (Criar) - Nesta etapa, o processo está prestes a ser criado, mas ainda não foi criado, é o programa que está presente na memória secundária que será selecionado pelo SO para criar o processo.
  • Pronto - Novo -> Pronto para executar. Após a criação de um processo, o processo entra no estado pronto, ou seja, o processo é carregado na memória principal. O processo aqui está pronto para ser executado e aguardando o tempo da CPU para sua execução. Os processos que estão prontos para execução pela CPU são mantidos em uma fila para processos prontos.
  • Executar - O processo é escolhido pela CPU para execução e as instruções dentro do processo são executadas por qualquer um dos núcleos da CPU disponíveis.
  • Bloqueado ou espera - Sempre que o processo solicita acesso a E / S ou precisa de entrada do usuário ou precisa de acesso a uma região crítica (o bloqueio para o qual já foi adquirido), ele entra no estado de bloqueado ou de espera. O processo continua esperando na memória principal e não requer CPU. Assim que a operação de E / S for concluída, o processo vai para o estado pronto.
  • Encerrado ou concluído - o processo é eliminado e o PCB é excluído.
  • Suspender pronto - Processos que estavam inicialmente no estado pronto, mas foram trocados da memória principal (consulte o tópico Memória Virtual) e colocados no armazenamento externo pelo planejador são considerados no estado de pronto para suspender. O processo fará a transição de volta ao estado pronto sempre que o processo for novamente trazido para a memória principal.
  • Suspend esperar ou suspender bloqueado - Semelhante a suspender pronto, mas usa o processo que estava executando a operação de E / S e a falta de memória principal fez com que eles fossem movidos para a memória secundária.
    Quando o trabalho for concluído, ele pode ir para o modo suspenso pronto.

Processos vinculados à CPU e IO:
se o processo for intensivo em termos de operações da CPU, ele será chamado de processo vinculado à CPU. Da mesma forma, se o processo for intensivo em termos de operações de E / S, ele é chamado de processo vinculado a E / S.

Tipos de agendadores:

  1. Long term - performance - toma uma decisão sobre quantos processos devem ser feitos para permanecer no estado pronto, isso decide o grau de multiprogramação. Uma vez que uma decisão é tomada, ela dura muito tempo, portanto, é chamada de agendador de longo prazo.
  2. Curto prazo - Tempo de comutação de contexto - O escalonador de curto prazo decidirá qual processo será executado a seguir e, em seguida, chamará o despachante. Um despachante é um software que move o processo de pronto para execução e vice-versa. Em outras palavras, é a troca de contexto.
  3. Médio prazo - Tempo de troca - A decisão de suspensão é tomada pelo agendador de médio prazo. O agendador de médio prazo é usado para troca que está movendo o processo da memória principal para a secundária e vice-versa.

Multiprogramação - Temos muitos processos prontos para serem executados. Existem dois tipos de multiprogramação:

  1. Preempção - O processo é removido à força da CPU. A preempção também é chamada de compartilhamento de tempo ou multitarefa.
  2. Não preempção - Os processos não são removidos até que concluam a execução.

Grau de multiprogramação -
O número de processos que podem residir no estado pronto no máximo decide o grau de multiprogramação, por exemplo, se o grau de programação = 100, isso significa que 100 processos podem residir no estado pronto no máximo.

Aprenda todos os conceitos do GATE CS com aulas gratuitas ao vivo em nosso canal do youtube.