Buscar

Sistema Operacional 04 Processos

Prévia do material em texto

Sistema Operacional 
Gerência de Processos 
Prof. Esp. Jairo Luciano Rêgo 
jairo.rego@pro.unifacs.br 
Objetivos 
 
• Definir Processos e outros termos relacionados 
 
• Compreender o Ciclo de Vida do Processo 
 
• Identificar as informações importantes para o 
chaveamento de contexto 
Tópicos 
• Introdução 
• Estados do Processo 
• Gerenciamento do Processo 
• Descritores de Processos 
• Operações sobre Processos 
• Hierarquia de Processos 
Definição 
• O que é um Processo? 
o Um conjunto de instruções e dados (Programas) 
que estão sendo executadas pelo sistema 
operacional, ou seja é um “programa em 
execução” (Silberschatz, Tanenbaum) 
 
• Processos são entidades independentes entre si, 
mas concorrem aos mesmos recursos do 
computador. 
Espaço de endereço 
• Cada processo tem seu próprio espaço de 
endereço que normalmente consiste em 
o Uma região onde fica armazenado o código 
o A região de dados onde ficam as variáveis e a 
memória alocada dinamicamente 
o A região de pilha armazena 
instruções e variáveis 
locais para chamadas 
ativas de procedimento 
Gerenciamento de Processo 
• Para permitir que vários processos executem 
em uma máquina com um processador, é 
necessário que o Sistema Operacional 
intercale a execução dos processos 
assegurando cuidadosamente para que 
nenhum erro ocorra. 
 
 
 
Ciclo de vida do processo 
• É papel do Sistema Operacional assegurar que 
cada processo receba uma quantidade suficiente 
de tempo do processador 
 
• Em geral há um número muito maior de processos 
a executar do que o número de processador na 
máquina 
 
• Daí, em algum instante 
 um processo pode estar 
 em execução ou pode 
 estar aguardando em 
 uma fila a sua vez de 
 executar 
Estados do Processo 
• O sistema operacional em geral organiza uma lista para os 
processos Prontos e para os processos Bloqueados 
 
• A lista de processos Prontos em geral apresenta os processos em ordem de 
prioridade para que sejam o próximo a ser executado pelo processador 
 
 
 
 
• Já a lista de bloqueados não apresenta prioridade, uma vez que os 
bloqueados não se tornam prioritariamente bloqueados ou desbloqueados 
 
Estados do Processo 
Estados do Processo 
Gerenciamento de Processo 
-- Estado -- 
Gerenciamento de Processo 
-- Transição -- 
• O processo utiliza o processador por um intervalo 
de tempo, denominado Quantum 
 
Gerenciamento de Processo 
-- Transição -- 
Gerenciamento de Processo 
-- Transição -- 
Gerenciamento de Processo 
-- Transição -- 
Bloqueado 
Blocos de Controle do Processo (PCB) 
• Quando um sistema operacional 
inicia um processo, ele executa 
diversas tarefas 
 
• Primeiro, ele deve conseguir 
identificar o processo, daí cada 
processo recebe o Número de 
Identificação de Processo (PID – 
Process Identification Number) 
 
• Em seguida o processo cria o 
Bloco de Controle do Processo 
(PCB), também denominado 
Descritor do Processo 
Bloco de Controle do Processo (PCB) 
• O PCB apresenta as seguintes informações 
o PID 
o Estado do Processo 
o Contador de programa 
• Aponta para a próxima instrução a ser executada 
o Prioridade de Escalonamento 
o Ponteiro (Dados) para o processo pai 
o Ponteiro (Dados) para os processos filhos 
o Ponteiros (Dados) para localizar dados e instruções na 
memória 
o Ponteiros (Dados) para recursos alocados (arquivos 
abertos por exemplo) 
 
Operações sobre processo 
• Os sistemas operacionais devem ser capazes 
de executar algumas operações sobre os 
processos, dentre elas 
 
o Criar 
o Destruir 
o Suspender 
o Retomar o processo 
o Alterar a prioridade 
Hierarquia de Processos 
• Um processo pode gerar um novo processo 
• Daí origina-se a relação processo-pai e 
processo-filho 
• Isso leva a organização hierárquica de 
processos 
• Exemplos 
o Em geral existe um processo maior 
o No núcleo, são executados uma série de outros 
processos 
o Ao se autenticar, é criado um processo 
contento o Shell para interação com o usuário 
o A partir do Shell, outros processos podem ser 
executados 
 
Interrupções 
• É um mecanismo que permite o software responder 
a sinais do hardware. 
 
 Podem ser: 
 Interrupções síncronas (chamadas de desvios / traps) disparadas 
pelo processador como resposta a alguma instrução do processo, 
por exemplo: 
o Quando um processo tenta executar uma operação ilegal 
o Ao tentar fazer uma divisão por zero 
o Ao tentar acessar um espaço de memória protegido 
 Interrupções assíncronas disparadas por algum evento 
independente da instrução do processador: 
o Quando um dispositivo de hardware emite interrupção para indicar sua 
mudança de status 
o Um teclado ao avisar que uma tecla foi pressionada 
o Um mouse quando é movimentado e clicado 
Processos 
-- Criação -- 
Processos 
-- Execução -- 
Processos 
-- Finalização -- 
Atividade

Continue navegando