Experiência do sistema operacional três (prioridade e intervalo de tempo da programação do processo)

Um . Purpose

  Compreender a simultaneidade da execução do processo

    Compreender os vários estados do processo e suas transições 

   Compreender a estrutura do PCB no gerenciamento de processos

         Domine o algoritmo de agendamento do processo de número de prioridade

Dois . Conteúdo Experimental

   Com VC preparado para alcançar processo de realização do processo de simulação de agendamento agendamento. O algoritmo de agendamento usa um algoritmo que combina números dinâmicos de prioridade e intervalos de tempo. Os requisitos são os seguintes :

  • Informações relacionadas ao processo, como identificador do processo e tempo do processo, são colocadas no PCB ;
  • Projete três filas de processo de execução, conclusão e pronto;
  • A fila pronta é organizada em ordem decrescente de prioridade e cada vez que o processo pronto com a prioridade mais alta é selecionado para execução. O número de prioridade inicial é definido como um número maior (como 30 ) menos o tempo de execução do processo e o número de prioridade é ajustado à medida que o processo é executado;
  • Cada vez que o processo é executado, o número de prioridade é reduzido por um valor fixo (como 3 ), o tempo da CPU é aumentado em 1 e o tempo requerido pelo processo é reduzido em 1. Se o tempo exigido pelo processo se torna 0 , significa que o processo está concluído e seu status é definido como "F" , Insira seu PCB na fila de conclusão, se a fila de pronto não estiver vazia, altere o primeiro PCB da fila de pronto para o estado em execução. Se o processo não for concluído, compare seu número de prioridade com o primeiro número de prioridade da PCB na fila pronta , se for pequeno, altere-o para o estado pronto, insira-o na posição apropriada na fila pronta e altere o primeiro PCB na fila pronta Está correndo. Repita o processo acima até que a fila pronta esteja vazia e todos os processos se tornem completos.

    Estrutura de dados relacionada:

          nó de estrutura typedef { 

                 char name [10]; // identificador do processo

                 int prio; // Prioridade do processo

                 int cput; // tempo de CPU ocupado pelo processo

                 int needt; // Tempo de CPU necessário antes da conclusão do processo

                char state // Estado do processo struct node * next;

        } PCB;

 

3. Código experimental

     Consulte o código da Experiência 2 para completar o código do algoritmo.

Requisitos:

   Escreva um fluxograma da implementação do algoritmo

   Programação para alcançar a função requerida pelo problema

   Resultados experimentais para testar vários conjuntos de dados

  

Acho que você gosta

Origin www.cnblogs.com/byczyz/p/12755507.html
Recomendado
Clasificación