Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Arquitetura de Sistemas
Operacionais
Técnico em Informática
Turmas: MAI1
Escalonamento de Tarefas
Processo
Cap. 5 – Processo
1
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Sumário
•
•
•
•
•
•
•
•
•
•
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
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Estrutura do Processo
• Estrutura do processo
Contexto de
Software
Contexto de
Hardware
Programa
Espaço de
Endereçamento
Cap. 5 – Processo
3
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Espaço de Enderaçamento
• Estrutura de um processo
nome
PID
owner (UID)
registradores
gerais
prioridade de
execução
data/hora
de criação
registrador PC
Contexto de
Hardware
Contexto de
Software
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
4
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Contexto de Hardware
• Mudança de
contexto
Sistem a O p er acion al
Pr ocesso A
Pr ocesso B
execu tan do
Salva r eg istrad or es d o
Pr ocesso A
Car rega reg istr ado res do
Pr ocesso B
execu tan do
Salva r eg istrad or es d o
Pr ocesso B
Car rega reg istr ado res do
Pr ocesso A
execu tan do
Cap. 5 – Processo
5
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Contexto de Software
• Identificação
• Quotas
• Privilégios
Cap. 5 – Processo
6
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Bloco de Controle do Processo
• PCB
Os PCBs de todos os processos residem na
memória principal em uma área exclusiva do
sistema operacional. O tamanho desta área
geralmente é limitado por um parâmetro do
sistema operacional que permite especificar o
número máximo de processos que podem ser
suportados simultaneamente pelo sistema.
Toda a gerência dos processos é realizada através
de system calls, que realizam operações como
criação, alteração de características, visualização,
eliminação, sincronização, suspensão de processos.
Cap. 5 – Processo
7
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Bloco de Controle do Processo
• PCB
ponteiros
Estado do processo
Nome do processo
Prioridade do processo
Registradores
Limites de memória
Lista de arquivos abertos
..
..
..
..
Cap. 5 – Processo
8
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Estados do Processo
• Execução (running)
• Pronto (ready)
• Espera (wait)
Cap. 5 – Processo
9
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Estados do Processo
• Lista de PCBs
Lista de
processos
em estado
de pronto
..
..
.
..
.
PCB# 5
..
..
.
..
.
PCB# 1
Lista de
processos
em estado
de espera
Cap. 5 – Processo
..
.
..
..
.
..
.
..
..
.
..
.
..
..
.
PCB# 9
PCB# 2
PCB# 4
10
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Mudanças de Estado
• Mudanças de estado do processo
Estado de Execução
d
b
a
c
Estado de Espera
Cap. 5 – Processo
Estado de Pronto
11
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Mudanças de Estado
• Mudanças de estado do processo (2)
Estado de Execução
Estado de Espera
Estado de Pronto
Estado de Espera
Estado de Pronto
residente
não residente
Cap. 5 – Processo
12
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Criação e Eliminação
• Mudanças de estado do processo (3)
E
stadodeE
xecução
E
stadodeE
spera
Cap. 5 – Processo
E
stadodeT
érm
ino
E
stadodeP
ronto
E
stadodeC
riação
13
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Processos Independentes,
Subprocessos e Threads
• Estrutura de processos e subprocessos
Processo A
Processo C
Processo B
Processo D
Cap. 5 – Processo
Processo E
14
• Processo multithread
Contexto
de hardware
Contexto
de hardware
Contexto
de hardware
Thread 1
Thread 2
Thread 3
Contexto de
software
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Processos Independentes,
Subprocessos e Threads
Espaço de
endereçamento
Cap. 5 – Processo
15
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Processos Foreground e
Background
• Processos foreground e background
rocessoForeground
(a) P
entrada
saída
terminal
terminal
ackground
rocessoB
(b) P
entrada
arquivo
deentrada
Cap. 5 – Processo
saída
arquivo
desaída
16
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Processo Foreground e
Background
• Pipe (canalização)
saídado
P
rocessoA
entradado
P
rocessoA
saídado
P
rocessoB
entradado
P
rocessoB
P
rocesso A
Cap. 5 – Processo
P
rocesso B
17
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Processos CPU e IO Bound
• Processos CPU x IO Bound
E/S
E/S
UCP
UCP
tempo
(a) CPU-bound
Cap. 5 – Processo
tempo
(b) I/O-bound
18
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Sinais
• Uso de sinais
interrupção
sinal
Sistema Operacional
[ctrl-C]
Processo
Cap. 5 – Processo
19
Arquitetura de Sistemas Operacionais – Fucapi/CEEF
Sinais
• Sinais, interrupções e exceções
Processo
Processo
Sinais
Sistema Operacional
Interrupções
Exceções
Hardware
Cap. 5 – Processo
20
Download

Estrutura do Processo