full
Escalonamento de Processos
Escalonamento
Vimos que o estado de pronto possui uma fila de processos aguardando a liberação da CPU.
O componente que tenta manter o processador ocupado o tempo todo, escolhendo que será o próximo processo a ser executado é o escalonador.
Escalonamento
Categorias de algoritmos
Não-preemptivos
Preemptivos
Processos e Recursos
Conceito de Escalonamento
O S.O. gerencia recursos computacionais em benefício dos diversos processos que executam no sistema.
A questão fundamental é:
• Que informações o sistema operacional precisa manter para poder controlar os processos e gerenciar os recursos em benefícios deles?
Imagem do Processo
Nome dado à coleção formada por:
Código do programa a ser executado.
Pilha (de usuário e do sistema) para controle de chamadas de procedimentos e de SVCs.
Área de dados para armazenamento de variáveis locais e globais.
Coleção de atributos do processo (mantidos no Bloco de Controle de Processos).
Imagem do Processo
Bloco de Controle de Processo
(BCP)
Estrutura de dados (registro) usada para representar um processo dentro do sistema operacional.
Mantém todas as informações que o S.O precisa para poder controlar a execução do processo (coleção de atributos do processo).
Número fixo ou variável de blocos descritores de processos (alocação estática x alocação dinâmica de memória). Process Control Block.
Informações Típicas do BCP
Prioridade do processo.
Localização na memória principal.
Identificação dos arquivos abertos.
Estado do processo.
Contexto de execução (conteúdo dos
registradores).
Ponteiros para encadeamento nas filas.
Informações de accounting (ex:tempo de
CPU).
BCPs e as Filas do Sistema
Tipos de Informações do BCP
As informações mantidas no BCP podem ser divididas em três categorias:
Identificação do processo;
Informações de estado do processador;