Você está na página 1de 29

Processo

um programa em execuo ( uma tarefa). O Processo altera o seu estado na medida que executa um programa. a estrutura responsvel pela manuteno de todas as informaes necessrias execuo de um programa (registradores e espao em memria).

Sistemas Operacionais

Processo
Um mesmo programa sendo executado por dois usurios so dois processos executando
Processo 1 Usurio 1 Editor de Texto Processo 2 Usurio 2

Sistemas Operacionais

Modelo de Processo
O Sistema Operacional materializa o processo atravs do PCB (Process Control Block), tambm conhecido como descritor de processo. No PCB so mantidas todas as informaes sobre o processo (Identificao, prioridade, estado, etc.).

Sistemas Operacionais

Bloco Tpico Contm


Um nmero de identificao para o processo Apontadores para os locais do programa e seus dados; Contedo do registrador (res); Estado de vrias bandeiras e interruptores; Ponteiros para os limites superior e inferior da memria necessria para o processo; Uma lista de arquivos abertos pelo processo; A prioridade do processo; O status de todos os dispositivos de E / S necessrios para o processo.

Bloco de Controle de Processos


Ponteiros Estado do Processo Nome do Processo Propriedade do Processo Registradores Limites de memria Lista de arquivos abertos

Sistemas Operacionais

Modelo de Processo
Um processo pode ser dividido em 3 elementos bsicos:

Contexto de Hardware Contexto de Software Espao de Endereamento

Sistemas Operacionais

Modelo de Processo
Contexto de Hardware:

Contedo dos registradores: PC - Program Counter, SP Stack Pointer e bits de estado. fundamental para a troca de processos pelo SO (context switching mudana de contexto).

Sistemas Operacionais

Processo - Mudana de Contexto


Processo A
executando

Processo B

Salva registradores do P.A. Carrega registrador do P.B.


executando

Salva Registrador do P.B.


Carrega Registrador do P.A.
executando

Sistemas Operacionais

Modelo de Processo
Contexto de Software:

Caractersticas do processo que vo influenciar em sua execuo: nmero mximo de arquivos, tamanho do buffer, etc. Algumas caractersticas podem ser alteradas durante sua execuo, outras podem ser apenas definidas na criao.

Sistemas Operacionais

Modelo de Processo
Diviso do Contexto de Software:

Identificao: PID Process Identification, nmero nico que identifica o processo no sistema (pode-se tambm ter a UID User Identification, que implementa modelos de segurana).

Sistemas Operacionais

Modelo de Processo
Diviso do Contexto de Software:

Quotas: Determina os limites de cada recurso do sistema, se for insuficiente o processo pode ser executado lento, ou at mesmo no executar (tamanho mximo de arquivos, memria mxima que pode alocar, mximo de subprocessos, etc.).

Sistemas Operacionais

Modelo de Processo
Diviso do Contexto de Software:

Privilgios: Definem o que o processo pode ou no fazer no sistema (segurana, gerncia do sistema, etc.).

Sistemas Operacionais

Modelo de Processo
Espao de Endereamento:

a rea de memria que ser alocada ao programa e onde ele ser executado, deve ser protegida dos demais processos.

Sistemas Operacionais

Estados do Processo
Um processo passa por uma srie de estados diferentes durante sua existncia. A mudana de estado causada por uma srie de eventos.
Sistemas Operacionais

Estados do Processo
Aps ser criado um processo entra em um ciclo de CPU (executa...espera...executa..) Para dividir o uso da CPU entre os processos os demais devem ficar esperando.

Sistemas Operacionais

Estados do Processo
Execuo (Running): Usando a CPU. Pronto (Ready): Em condies de Rodar (No tem CPU), est apenas aguardando que o SO o aloque na CPU. Espera (wait): Impedido de Rodar, depende de um evento externo ao processo (uma I/O, ou uma determinada hora).

Sistemas Operacionais

Estados do Processo
Um processo em Espera pode ser subdividido:

Espera: Aguarda pela concluso de uma operao. Bloqueado (Blocked): Espera a autorizao para utilizar um recurso, que pode no estar disponvel.

Sistemas Operacionais

Estados do Processo
Um processo pronto ou em espera, pode estar armazenado na memria secundria. O SO cria o mecanismo de lista encadeada para implementar o controle dos processos, h lista para processos prontos e em espera.

Sistemas Operacionais

Mudana de Estados do Processo


Um processo muda diversas vezes de estado durante sua execuo, por eventos dele mesmo (voluntrios) ou do SO (involuntrios). Voluntrio pode ser uma operao de I/O. Involuntrio, a interveno do SO em um programa em Looping.

Sistemas Operacionais

Mudana de Estados do Processo


Basicamente 4 tipos de mudanas de estado:

Pronto Execuo: Quando se cria um processo entra na lista pronto. Execuo Espera: Aguarda algo como uma I/O gerada pelo prprio processo. Espera Pronto: Quando a operao solicitada atendida, ou o recurso cedido. Execuo Pronto: O SO gera eventos, como por exemplo, fim da fatia de tempo.
Sistemas Operacionais

Mudana de Estados do Processo


1 Pronto Execuo. Execuo

3- TimeRunOut 2
Espera

2 Execuo Espera. 3 Execuo Pronto.

1- Dispath
Pronto

4- Espera Pronto

4- WakeUp
Sistemas Operacionais

Mudana de Estados do Processo


1 - Processo bloqueado para fazer entrada de dados. tempo novamente 1 Espera 4 externo 2 2 - Escalonador escolhe novo processo. 3 - Escalonador entrega Processador a esse novo processo. 4 - Entrada de dados concluda. Sistemas Operacionais

Execuo S/condio 3

Pronto

SubProcesso
Um processo pode criar outros processos de maneira hierrquica.

Processo pai Processo filho

Criando uma estrutura de rvore para representar. Cada nodo da rvore um processo, se um processo deixa de existir, os filhos tambm deixam.
Sistemas Operacionais

SubProcesso
P1 Inicial

P2

Criados por P1

P3

P4

P5

P6

P7

P8

P9

P10

Criados pelos filhos de P1 Sistemas Operacionais

SubProcesso
Permite dividir uma aplicao em partes para poder trabalhar de forma concorrente (vrios usurios numa base de dados). Aumento do throughput da aplicao (quantidade de dados processados em um determinado espao de tempo). Cada subprocesso tem seu contexto de hardware, contexto de software e espao de endereamento.
Sistemas Operacionais

SubProcesso
No UNIX os processos so criados pela chamada de sistema FORK, cujos processos rodam em paralelo. No MS-Dos o processo-pai espera pelo filho.(chamada p/carregar arquivo binrio).

Sistemas Operacionais

Threads
Compartilham o processador da mesma forma que o processo. Tem seu contexto. Compartilham o mesmo espao de endereamento, permitindo que um thread possa alterar dados de outro thread. Trabalham de forma cooperativa.
Sistemas Operacionais

Processos do Sistema
Tornam o ncleo mais simples e seguro. Grande parte do sistema rodada em termos de processos, inclusive processos de usurio.

Sistemas Operacionais

Processos do Sistema
So processos do SO:

Auditoria e segurana. Servios de rede. Contabilizao e uso dos recursos. Contabilizao de erros. Gerncia de impresso. Gerncia de Jobs e Batch. Temporizao. Comunicao de eventos. Interface de comandos (shell). Sistemas Operacionais

Você também pode gostar