1. Sistemas Operacionais
-Gerência de Processos
Ernesto Massa
(slides fornecidos pela Prentice Hall
e adaptados para esta disciplina)
1
Pearson Education Sistemas Operacionais Modernos – 2ª Edição
2. Processos e Threads
Processos
Threads
Comunicação interprocesso
Problemas clássicos de IPC
Escalonamento
Pearson Education
2
Sistemas Operacionais Modernos – 2ª Edição
3. Processos
Fato 1:
Nossas máquinas executam vários
processos simultâneamente.
Fato 2:
Existe apenas um processador em
nossas máquinas.
Conclusão:
Existe um pseudo-paralelismo.
Pearson Education
3
Sistemas Operacionais Modernos – 2ª Edição
4. Processos
a) Multiprogramação
b) Como vemos a multiprogramação:
processos sequenciais
independentes
a) Ocupação real do processador
Pearson Education
4
Sistemas Operacionais Modernos – 2ª Edição
5. Criação de Processos
No início de tudo, o SO está executando
sozinho.
Outros processos são criados:
Na inicialização do sistema;
Por system calls de criação de processos;
Por solicitação direta do usuário executar um
programa;
Pela execução de um programa batch.
Sempre existe um processo executando
uma system call para a criação de um
novo processo.
Pearson Education
5
Sistemas Operacionais Modernos – 2ª Edição
6. Criação de Processos
Exemplos de diferentes
implementações:
DOS
System call que carrega um novo
processo na memória e executa-o;
O processo pai aguarda o seu
encerramento.
UNIX
A system call fork duplica o processo pai;
A system call execve altera o conteúdo da
memória, substituindo-o por um novo
programa e executa-o.
Pearson Education
6
Sistemas Operacionais Modernos – 2ª Edição
7. Término de Processos
Possibilidades de término de processos:
Saída normal (voluntária)
exit
Saída por erro (voluntária)
Impossibilidade de executar uma instrução
Erro fatal (involuntário)
Execução de instrução ilegal
Cancelamento por um outro processo
(involuntário)
Kill !!!
Pearson Education
7
Sistemas Operacionais Modernos – 2ª Edição
8. Hierarquias de Processos
Pai cria um processo
filho, processo filho
pode criar seu próprio
processo
Formam uma
hierarquia
UNIX chama isso de
“grupo de processos”
Windows não possui o
conceito de hierarquia
de processos
Todos os processos
são criados iguais
Pearson Education
8
Sistemas Operacionais Modernos – 2ª Edição
9. Estados de Processos
Possíveis estados de processos
em execução
bloqueado
pronto
Transições entre os estados
Pearson Education
9
Sistemas Operacionais Modernos – 2ª Edição
10. Transições de Estado
programa
carga
novo encerrado
final de
admissão execução
em
pronto escalonamento
execução
espera por
evento ou I/O
evento ou I/O
concluído
em espera
Pearson Education
10
Sistemas Operacionais Modernos – 2ª Edição
11. Estados de Processos
Camada mais inferior de um SO em
camadas trata interrupções,
escalonamento.
Acima desta camada estão os
processos sequenciais.
Pearson Education
11
Sistemas Operacionais Modernos – 2ª Edição
12. Processos: Contexto
Implementado através dos “Blocos de
Controle de Processos” – (BCP), também
chamada de “Tabela de Processos”;
Dividido em três elementos básicos:
Contexto de Software:
Id do Processo;
Descrição dos Arquivos utilizados;
Parâmetros de Escalonamento;
Estado Corrente, etc.
Contexto de Hardware:
Registradores;
Dispositivos alocados, etc.
Espaço de Endereçamento.
Pearson Education
12
Sistemas Operacionais Modernos – 2ª Edição
13. Tabela de Processos
Campos da entrada de uma tabela
de processos:
Pearson Education
13
Sistemas Operacionais Modernos – 2ª Edição
14. Implementação de Processos
Esqueleto do que o nível mais baixo
do SO faz quando ocorre uma
system call:
Pearson Education
14
Sistemas Operacionais Modernos – 2ª Edição