A tabela de processos ou blocos de controles está presente em todos os sistemas operacionais e possuem a função de armazenar informações sobre o estado do processo, seu contador de programa, o ponteiro de pilha, alocação da memória, os estados do seus arquivos abertos, sua contabilidade sobre contabilidade, escalonamento e tudo sobre o processo que deva ser salvo quando o processo passar do estado de em execução para o estado de bloqueado.

Podemos classificar que a tabela de processos divide o armazenamento dos processos em três grupos sendo eles gerenciamento de processos , gerenciamento de memória e gerenciamento de arquivos .

Itens que compõe o gerenciamento de processos :


  • Registradores;
  • Contador de programa;
  • Palavra do estado do programa;
  • Ponteiro de pilha;
  • Prioridade;
  • Parâmetros de escalonamento;
  • Identificador ID do processo;
  • Processo Pai;
  • Grupos de processos;
  • Sinais;
  • Momento que o processo iniciou;
  • Tempo usado pela CPU;
  • Tempo de uso da CPU do filho;
  • Momento do próximo alarme.

Itens que compõe o gerenciamento de memória:


  • Ponteiro para segmento do código;
  • Ponteiro para segmento de dado;
  • Ponteiro para segmento de pila;

Itens que compõe o gerenciamento de arquivos :


  • Diretório raiz;
  • Diretório de trabalho;
  • Descritores de arquivos;
  • Identificador(ID) do usuário;
  • Identificador(ID) do grupo.

Com a utilização da tabela de processos, a troca de processos poderá ser efetuada não havendo perda do que já foi processado. Então quando o processo voltar a CPU para execução, a leitura da tabela de processo será feita, assim inicia-se o processamento do processo que estava bloqueado no ponto que a CPU parou de processar e gravou as informações do processo na tabela de processos e fez a troca por outro processo. Assim o conceito de multiprogramação não terá problemas e controle.