SISTEMAS OPERACIONAIS PROCESSOS Horรกcio Ribeiro
ESTRUTURA DO PROCESSO Processo é gerado pelo compilador É um conceito dinâmico Os processo concorrem pelo processo:
P2
P3
Px
Inst.p11 Inst.p12 Inst.p13 ..... Inst.p1n
Inst.p21 Inst.p22 Inst.p23 ..... Inst.p2n
Inst.p31 Inst.p32 Inst.p13 ..... Inst.p3n
Inst.px1 Inst.px2 Inst.pxx ..... Inst.p1n
Inst.p11 Inst.p12 Inst.p13 Inst21 Inst22 Inst21 Inst31 Inst32 Int14 Int15 Inst15 inst24 inst25
P1
tempo
ESTRUTURA DO PROCESSO Cada usuário tem um processo associado Ao usar a CPU o usuário pensa que é único
ESTRUTURA DO PROCESSO Área de hardware: Espaço destinado ao conteúdo dos registradores da CPU Área de Software: Identificação do processo Limites dos recursos que pode ser usado Número de arquivos – identificação do usuário Cotas de recursos- prioridade Área de Endereçamento Espaço de memória que o processo pode usar
BLOCO DE CONTROLE DO PROCESSO PCB – Process Control Block Implementa uma estrutura de dados para controlar o processo que está na memória. Esta estrutura de dados é implementada na memória – no sistema operacional
PCB PID=1
PCB PID=2
PCB PID=8
PCB PID=5
ESTRUTURA DO PCB PONTEIROS ESTADO DO PROCESSO PRIORIDADE DO PROCESSO REGISTRADORES LIMITES DE MEMÓRIA ARQUIVOS ABERTOS
contabilização
PROCESS STATUS = COMANDOS 
Pode-se: alterar, criar, deletar visualizar, sincronizar, trocar prioridades...
ESTADOS DO PROCESSO:
Execução – Running - quando está ocupando o processar (um por vez)
Pronto – Ready – O processo aguarda a CPU a ordem de executar é chamada de ESCALONAMENTO
Espera – wait – quando aguarda por algum evento (também chamado de bloced)
MUDANÇA DE ESTADOS Os eventos são gradas pelo processo ou pelo S.O. Um processo pronto pode estar na Memória principal ou em disco: Mudança de estado:
PRONTO EXECUÇÃO ESPERA EXECUÇÃO
EXECUÇÃO ESPERA PRONTO PRONTO
TROCA DE PROGRAMA NA MEMÓRIA
A técnica de troca do processo entre a memória principal e o disco é conhecida como: Swap out --- tira da memória principal. Swap in ------ tira do disco e coloca na memória
CRIAÇÃO DO PROCESSO - NEW
Criação (new): Está no estado de criação quando a estrutura de PCB, aloca recursos Formas de criação de processo: Logon interativo: Via linguagem de comandos Via rotinas de sistemas operacionais
ELIMINAÇÃO DO PROCESSO - EXIT
Eliminação (exit): Está no estado de terminado o processo não é mais executado. Neste momento são colocadas as informações de contabilização. O PCB é deletado
EXIT
Eliminação (exit): Formas de eliminar o processo: -Termino norma de execução. -Eliminação por um outro processo. -Eliminação forçada por falta de recursos
TIPO DE PROCESSOS
-CPU bound: focado no uso de CPU - I/O bound: focado em periféricos de entrada e saída
PROCESS FOREGROUND E BACKGROUND
Um processo tem dois canais de comunicação in
processo
out
FOREGROUND - COMUNICAÇÃO DIRETA COM O USUÁRIO DURANTE O PROCESSAMENTO (INTERATIVO)
BACKGROUND - MODELO BATCH DE COMUNICAÇÃO PIPE LINE A SAIDA DE UM PROCESSO É LIGADA A ENTRADA DE OUTRO PROCESSO
PROCESSOS INDEPENDENTES, SUBPROCESSO E THREADS
SÃO FORMAS DIFERENTES DE IMPLEMNTAR: O CÓDIGO TRABALHA DE FORMA COOPERATIVA E PODEMOS TER:
independente: Não há vinculo do processo criado com o seu criador. Sub processo: Processo pai ligado ao processo filho
PROCESSOS INDEPENDENTES, SUBPROCESSO E THREADS Thread
– criado para reduzir o tempo gasto na criação, eliminação e troca de contexto. Em um thread pode-se associar partes múltiplas do código e compartilham o mesmo contexto de software
SINAIS É
um mecanismo que permite notificar processos de eventos gerados pelo S.O. ou por outros processos.
O
tratamento de um sinal é semelhante ao tratamento de uma interrupção.