•09/06/2016 •1

Propaganda
•09/06/2016
Sumário
•
•
•
•
•
•
Arquitetura de Sistemas
Operacionais
Francis Berenger Machado
Luiz Paulo Maia
•
•
•
•
Capítulo 5
Processo
Cap. 5 – Processo
1
Introdução
Estrutura do processo
Estados do processo
Mudanças de estado do processo
Criação e eliminação de processos
Processos independentes, subprocessos e
threads
Processos foreground e background
Processos do sistema operacional
Processos CPU-bound e I/O-bound
Sinais
Cap. 5 – Processo
2
Introdução
Processo
• A gerência de um ambiente
multiprogramável é função do SO.
• O processador só executa as instruções
a partir do ciclo de busca e execução.
Neste ciclo, o processador busca na
RAM, armazena-a no registrador de
instruções (IR) para decodificar os bits
e realizar a execução.
• O registrador PC armazena o endereço
da próxima instrução, dando o
sequenciamento das instruções.
• Ambiente onde o programa é
executado.
• Base para a implementação de
sistemas multiprogramáveis.
• SO é responsável pelo gerenciamento
dos processos.
• Através do processo, um programa
aloca recursos, compartilha dados,
troca informações e faz sincronização.
Cap. 5 – Processo
Cap. 5 – Processo
3
Estrutura do Processo
• Estrutura do processo
Contexto de
Software
4
Contexto de Hardware
• Armazena:
– Conteúdo dos registradores gerais da CPU;
– Conteúdo dos registradores específicos:
• program counter (pc)
• stack pointer (sp)
• registrador de status (psw)
Contexto de
Hardware
Programa
Espaço de
Endereçamento
Cap. 5 – Processo
5
Cap. 5 – Processo
6
•1
•09/06/2016
Contexto de Hardware
Contexto de Software
Sistema Operacional
• Mudança de
contexto
Processo A
• Especificação de características e
limites dos recursos que podem ser
alocados pelo processo:
Processo B
executando
Salva registradores do
Processo A
Carrega registradores do
Processo B
executando
– Número máximo de arquivos abertos
simultaneamente;
– Prioridade de execução;
– Tamanho de buffer para E/S.
Salva registradores do
Processo B
• Arquivo de contas: gerenciado pelo
administrador, possui limites do
sistema
Carrega registradores do
Processo A
executando
Cap. 5 – Processo
7
Contexto de Software
• Grupos de informações sobre o
processo:
Cap. 5 – Processo
Espaço de Endereçamento
• Estrutura de um processo
nome
Cap. 5 – Processo
9
owner (UID)
prioridade de
execução
data/hora
de criação
• PCB (process control block)
Nome do processo
Prioridade do processo
Registradores
registrador PC
Contexto de
Software
Contexto de
Hardware
registrador SP
tempo de
processador
quotas
Programa
privilégios
registrador
de status
Espaço de
Endereçamento
endereços de memória
principal alocados
Cap. 5 – Processo
Bloco de Controle do Processo
Estado do processo
registradores
gerais
PID
– Identificação
• PID(process identification)
• Usuário ou processo proprietário
– Quotas
• Limites do sistema
–Nº máximo arquivos, processos etc.
– Privilégios
• Privilégios e direitos definem ações que
um processo pode fazer a ele ou demais
ponteiros
8
10
Estados do Processo
• Execução (running)
– Quando está sendo processado
•System Calls fazem o
gerenciamento dos processos:
• Pronto (ready)
•Criação;
– Aguardando para ser executado
– Escalonamento: gerencia a execução
•Alteração;
•Visualização;
•Eliminação;
Limites de memória
Lista de arquivos abertos
..
..
..
..
Cap. 5 – Processo
•Etc.
• Espera (wait)
•Residem na memória principal,
em uma área exclusiva do SO.
•A quantidade é limitada pelo SO
11
– Aguardando por algum evento externo ou
recurso para continuar o processamento
Cap. 5 – Processo
12
•2
•09/06/2016
Estados do Processo
• Lista de PCBs
Mudanças de Estado
• Mudanças de estado do processo
Estado de Execução
Lista de
processos
em estado
de pronto
.
..
..
..
.
.
..
..
..
.
PCB#5
PCB#1
d
b
a
Lista de
processos
em estado
de espera
c
..
.
..
..
.
..
.
..
..
.
..
.
..
..
.
PCB#9
PCB#2
PCB#4
Estado de Espera
Cap. 5 – Processo
13
14
Mudanças de Estado
• Mudanças de estado do processo (2)
Estado de Pronto
Cap. 5 – Processo
Criação e Eliminação
• Mudanças de estado do processo (3)
Estado de Execução
Estado de Término
Estado de Execução
Swap out: remove
da memória
Swap in: adiciona
na memória
Estado de Espera
Estado de Pronto
residente
não residente
Estado de Espera
Estado de Espera
Estado de Criação
Estado de Pronto
Cap. 5 – Processo
15
Cap. 5 – Processo
Processos CPU-bound e I/Obound
• Processos podem serclassificados de
acordo com a utilização do
processador:
16
Processos CPU e IO Bound
• Processos CPU x IO Bound
• CPU-bound: passa a maior parte do
tempo em execução.
• I/O-bound: passa a maior parte do
tempo em espera
Cap. 5 – Processo
Estado de Pronto
E/ S
E/ S
UCP
UCP
tempo
(a) CPU-bound
17
Cap. 5 – Processo
tempo
(b) I/ O-bound
18
•3
•09/06/2016
Processos foreground e
background
• Foreground: permite a comunicação
direta do usuário através de
dispositivos de E/S.
Processos Foreground e
Background
• Processos foreground e background
(a) Processo Foreground
entrada
• Background: não existe a comunicação
com o usuário durante o
processamento.
terminal
(b) Processo Background
saída
entrada
– Possibilidade de criar um pipe: saída de
um processo gera a entrada de outro
processo.
Cap. 5 – Processo
saída
terminal
arquivo
de entrada
19
Cap. 5 – Processo
20
Processo Foreground e
Background
• Pipe
arquivo
de saída
Formas de criação de
processos
• Logon interativo
– Usuário e senha
– Arquivo de usuários
saída do
Processo A
• Linguagem de comando
entrada do
Processo A
saída do
Processo B
entrada do
Processo B
Processo A
– Comandos da linguagem de comandos
Processo B
• Rotina do SO
– Criado por um programa executável com
uso de rotinas do SO
Cap. 5 – Processo
21
Processos Independentes,
Subprocessos e Threads
• Estrutura de processos e subprocessos
Cap. 5 – Processo
22
Processos Independentes,
Subprocessos e Threads
• Processo multithread
Processo A
Processo-pai
Contexto
de hardware
Processo C
Contexto
de hardware
Contexto
de hardware
Thread 2
Thread 3
Contexto de
software
Processo B
Subprocessos
Processo D
Processo E
Thread 1
Espaço de
endereçamento
Compartilhamento
de quotas com o
processo-pai
Cap. 5 – Processo
23
Cap. 5 – Processo
24
•4
•09/06/2016
Processos do Sistema
Operacional
•
•
•
•
•
•
•
•
•
Auditoria e segurança
Serviços de rede
Contabilização do uso de recursos
Contabilização de erros
Gerência de impressão
Gerência de jobs batch
Temporização
Comunicação de eventos
Interface de comandos (shell)
Cap. 5 – Processo
Sinais
• Mecanismo que permite notificar
processos de eventos gerados pelo SO
ou por outros processos.
interrupção
sinal
Sistema Operacional
[ctrl-C]
Processo
25
Cap. 5 – Processo
26
Sinais
• Sinais, interrupções e exceções
Processo
Apêndice
• Program Counter (PC)
Processo
• Stack Pointer (SP)
• Program status word (PSW)
Sinais
Sistema Operacional
Interrupções
Exceções
Hardware
Cap. 5 – Processo
27
Cap. 5 – Processo
Program Counter (PC)
• Contador de instruções: contém o
endereço da próxima instrução que o
processador deve buscar e executar.
Stack Pointer (SP)
• Apontador de pilha: contém o endereço
de memória do topo da pilha.
voltar
Cap. 5 – Processo
28
voltar
29
Cap. 5 – Processo
30
•5
•09/06/2016
Program status word (PSW)
• Registrador de status: responsável por
armazenar informações sobre a
execução de instruções, como
ocorrência de overflow.
voltar
Cap. 5 – Processo
31
•6
Download