Please enable JavaScript.
Coggle requires JavaScript to display documents.
Gestão de Processos - Escalonamento (Escalonamento de Processos…
Gestão de Processos - Escalonamento
Conceito:
Processo:
Porgrama em execução
Entidade ativa que executa um conjunto de acções determinado pelo programa
Programa:
Sequência de instruções sem atividade própria
Processador:
Dispositivo fisico
Escalonamento de Processos
Mecanismos de Escalonamento
Estrategias de Seleção
Algoritmos sem-preempção
Sempre que um processo entra em execução, ele não é removido até que esgote o tempo necessário à sua total execução
algoritmos com-preempção
associados com sistemas que utilizam interrupções para forçar a partilha da CPU. Interrupção involuntária da execução do processo.
Algoritmos preemptivos
O processo com maior orioridade na fila de processo READY deverá sempre ser escalonado para a CPU. O processo de maior prioridade vai sempre a frente.
Escalonamento para Tarefas Tipo
Gestão Estruturada do Escalonamento
Gestão do recurso de CPU
Operações com Processos
Cooperação entre procssos
SIncronização
Conjunto de protocolos usados para manter a integridade do sistema e/ou controlar o acesso a recursos que não podem ser usados por mais do que um processo simultaneamente
Mecanismos de Sincronização
Cooperação
Competição por um recurso
Exclusão Mútua
Secção Critica
Desativar interrupções
Uma só variavel de lock
Alternância estrita
SInalização
Troca de sinais de temporização entre processos concorrentes para coordenar o progresso coletivo.
É uma forma de sincronização rudimentar, mas usada frequentemente
Comunicação
Os processos concorrentes necessitam muitas vezes de trocar dados entre si.
Forma: Memória Partilhada, com cuidados na sincronização
Threads
Comunicação entre Processos
Forma que um processo partilha info entre processos - Protocolos IPC
Mensagens
Tamanho
Tamanho fixo
Baixa carga
Desperdicio de espaço com as msgs curtas
Tamanho variavel
Reservar "buffer" de tamanho variavel impõe sobrecarga e leva à fragmentação da memória
Mailbox
Pipes
Passagem
Sincrona
Ambos os processos "têm de se encontrar"
Quando processo envia msg é suspenso até o destinátario a receber
CONSEQUENCIA? poderia existir apenas 1 msg por par E/R
VANTAGENS
Baixo "overhead"
Implementação simples
Confirmação da receção
DESVANTAGENS
Obriga a execução sincrona mesmo quando esta não é desejada
Assincrona
O emissor não é bloqueado quando não existe nenhum recetor em espera
A implementação da função SEND é conseguido colocando o SO como intermediário
Aumenta o grau de concorrência
Estados dos processos
Novo
Em execução
Bloqueado
Pronto
Terminado