• Nenhum resultado encontrado

Sistemas Operacionais

N/A
N/A
Protected

Academic year: 2021

Share "Sistemas Operacionais"

Copied!
38
0
0

Texto

(1)

ANHANGUERA

ANHANGUERA

Sistemas Operacionais

Sistemas Operacionais

Prof. Esp. Rafael Gross

Prof. Esp. Rafael Gross

Processos Processos

(2)

Sumário

 Introdução

 Conceito de processo

 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

(3)

Introdução

 Multiprogramação (relembrando)

 Execução simultânea de vários programas com o

objetivo de tornar mais eficiente o

aproveitamento dos recursos do computador

 Conceitos necessários a multiprogramação

 Processo

 Interrupção

 Proteção entre processos

(4)

Conceito de processo (1)

 Diferenciação entre o programa e sua

execução

 Programa

 Entidade estática e permanente

 Sequência de instruções

 Passivo sob o ponto de vista do SO

 Processo

 Entidade dinâmica e efêmera

 Altera seu estado a medida que avança sua

execução

(5)

Conceito de processo (2)

 Abstração que representa um programa em

execução

 Diferentes instâncias

 Um programa pode ter várias instâncias em execução,

i.e., diferentes processos

 Mesmo código (programa) porém dados e momentos de

execução (contexto) diferentes

 Forma pela qual o SO “enxerga”um programa e

possibilita sua execução

 Processos executam

 Programas de usuários

(6)

Programa em execução

Unidade de alocação do processador

Processo x Programa Processo x Programa programa Contexto de Software Contexto de Espaço de endereçamento

Estrutura do Processo

(7)
(8)

Contexto de Software

 Identificação

 Quotas

(9)

Espaço de Endereçamento

 Estrutura de um processo Programa Contexto de Software prioridade de execução registrador PC data/hora de criação tempo de processador registrador SP quotas privilégios endereços de memória principal alocados registrador de status owner (UID) PID nome registradores gerais Contexto de Hardware Espaço de Endereçamento

(10)

Bloco de Controle do Processo (1)

.. .. .. .. p o n t e i r o s E s ta d o d o p r o c e s s o R e g i s tr a d o r e s N o m e d o p r o c e s s o P r i o r i d a d e d o p r o c e s s o L i m i te s d e m e m ó r i a L i s ta d e a r q u i v o s a b e r to s Imagem do ProcessoProcess Control Block (PCB)CódigoPilhaDados (parte modificável do espaço de endereçamento) (conjunto de atributos)

(11)

Bloco de Controle do Processo (2)

registrador PC

registradores de uso geral

informações de escalonamento limites de memória

privilégios

relação de arquivos abertos

PCB => Process Control Block

Identificação

Estado

Controle

identificação estado

(12)

Ciclos de vida de um processo

 Criação

 Execução

(13)

Criação (1)

 Momento da execução

 Chamadas de sistemas

 P.ex. fork, wait, etc

 Pode ser associada a uma sessão de

trabalho

 P.ex. Login de usuários: login + senha -> shell

(processo)

(14)

 Nova tarefa em batch  “Login” interativo  Serviço do S.O.  Processo filho Exemplo: Unix login shell init ps término logout

Criação (2)

(15)

Etapas de Criação

Atribui um identificador único (PID)

Aloca uma entrada na tabela de processosAloca espaço para o processo

Inicializa o PCB (Process Control Block)Coloca o processo na fila apropriada

Cria estruturas auxiliares

(16)

Execução (1)

 Processos apresentam dois ciclos básicos de

operação

 Ciclo de processador

 Tempo que ocupa a CPU

 Ciclo de entrada e saída

 Tempo em espera pela conclusão de um evento

(p.ex. E/S)

 Primeiro ciclo é sempre de processador

 Troca de ciclos por:

 CPU -> E/S: chamada de sistema

(17)

Execução (2)

 Processos

 CPU bound

 Ciclo de processador >> ciclo de E/S

 I/O bound

 Ciclo de E/S >> ciclo de processador

 Situação ideal

 Misturar processos CPU bound com I/O bound

(18)

Término

 Final de execução (normal)

 Por erros

 P.ex. proteção, aritméticos, E/S, tentativa de

execução de instruções inválidas, falta de

memória (falta de recurso), exceder limite de tempo, violação de acesso.

 Intervenção de outros processos (kill)

(19)

Processos: independentes ou cooperativos

•Processos independentes

Não afetam e nem são afetados pelos demais processos Não apresentam relacionamentos com outros processos •Processos cooperativos

Afetam e são afetados pelos demais processos Apresentam algum tipo de relacionamento

P.ex. Filiação

Podem compartilhar recursos Definição de hierarquia

Processos: independentes ou cooperativos

•Processos independentes

Não afetam e nem são afetados pelos demais processosNão apresentam relacionamentos com outros processos

•Processos cooperativos

Afetam e são afetados pelos demais processosApresentam algum tipo de relacionamento

P.ex. Filiação

Podem compartilhar recursosDefinição de hierarquia

(20)

Relacionamento entre processos (2)

 Hierarquia de processos

 Processo criador é processo pai

 Processo criado é processo filho

 Representação através de uma árvore

 Semântica associada: o que fazer na

destruição de um processo?

 Toda a descendência “morre”

 A descendência é herdada pelo processo “vô”

 Postergar a destruição efetiva do processo pai

(21)

Estados do Processo (1)

 Após criado, o processo necessita entrar em ciclo de

processador

 Hipóteses

 Processador não está disponível  Vários processos sendo criados

 Que fazer?

 Criação de um fila de processos aptos (p/ espera pelo

processador)

 Estados de um processo (modelo simplificado)

 Execução (running)  Pronto (ready)

(22)

Estados do Processo (2)

Modelo simplicado a dois estados

 Manter uma fila de processos aptos aa executar

 Esperando pelo processador ficar livre

 Escalonador (dispatcher)

 Atribui o processador a um processo da fila de aptos

 Pode prevenir um único processo de monopolizar o processador

Dispatcher

Pausa Time-out

Apto Executando

(23)

 Lista de processos .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. L i s t a d e p r o c e s s o s e m e s t a d o d e p r o n t o P C B # 5 P C B # 9 P C B # 1 P C B # 2 P C B # 4 L i s t a d e p r o c e s s o s e m e s t a d o d e e s p e r a

Estados do Processo (4)

(24)

Mudanças de Estado (1)

 Mudanças de estado do processo (1)

E s t a d o d e E x e c u ç ã o

a

c

d b

(25)

Mudanças de Estado (2)

 Mudanças de estado do processo (2)

r e s i d e n te n ã o r e s i d e n t e E s t a d o d e E x e c u ç ã o E s t a d o d e E s p e r a E s t a d o d e E s p e r a E s t a d o d e P r o n t o E s t a d o d e P r o n t o

(26)

Modelo de 5 estados (1)

 Executando (running)  Pronto (ready)  Bloqueado (blocked)  Criação (new)  Destruição (exit)

(27)

Novo Admissão Ocorrência do Evento (interrupção) Dispatch Liberação (término) Time-out Espera do evento (chamada de sistema) Pronto Execução Saída Bloqueado

Modelo de 5 estados (2)

• Necessidade de filas

(28)

Modelo de 5 estados (3)

 Mudanças de estado do processo (3) –

criação e eliminação

E s t a d o d e E x e c u ç ã o E s t a d o d e T é r m i n o

(29)

Processos suspensos (1)

 Processador é mais rápido que operações de E/S

 Possibilidade de todos processos estarem bloqueados

esperando por E/S

 Liberar memória ocupada por estes processos

 Transferidos para o disco (swap)

 Estado bloqueado assume duas situações

 Bloqueado com processo em memória  Bloqueado com processo no disco

 Necessidade de novos estados

 Bloqueado suspenso (blocked suspend)  Apto suspenso (ready suspend)

(30)

Processos suspensos (2)

Razões para suspender um processo

 Swapping

 SO necessita liberar memória para executar um novo

processo

 Solicitação do usuário

 Comportamento típico de depuradores

 Temporização

 Processo deve ter sua execução interrompida por um certo

período de tempo

 Suspensão de um processo por outro processo

(31)

Admissão Suspensão Dispatch Time out Ativação Ocorrência do Evento Ativação Suspensão Espera do Evento Pronto, Suspenso Bloqueado, Suspenso Pronto Execução Saída Bloqueado Novo Admissão Ocorrência do Evento Finalização com suspensão

(32)

Processos Independentes,

Subprocessos e Threads (1)

 Estrutura de processos e subprocessos

P r o c e s s o A

P r o c e s s o C P r o c e s s o B

P r o c e s s o E P r o c e s s o D

(33)

Processos Foreground e

Background (1)

 Processos foreground e background

( a ) P r o c e s s o F o r e g r o u n d ( b ) P r o c e s s o B a c k g r o u n d s a í d a s a í d a a r q u i v o d e s a í d a t e r m i n a l t e r m i n a l e n t r a d a e n t r a d a a r q u i v o d e e n tr a d a

(34)

Processo Foreground e

Background (2)

 Pipe e n t r a d a d o P r o c e s s o A P r o c e s s o Bs a í d a d o s a í d a d o P r o c e s s o A e n t r a d a d o P r o c e s s o B P r o c e s s o A P r o c e s s o B

(35)

Processos do Sistema

 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

(36)

Processos CPU e IO Bound

 Processos CPU x IO Bound

( a ) C P U - b o u n d te m p o te m p o

E / S E / S

U C P U C P

(37)

Sinais

 Uso de sinais [ c t r l - C ] P r o c e s s o i n t e r r u p ç ã o s i n a l S i s t e m a O p e r a c i o n a l

(38)

Sinais

 Sinais, interrupções e exceções

H a r d w a r e S i s t e m a O p e r a c i o n a l I n t e r r u p ç õ e s E x c e ç õ e s S i n a i s P r o c e s s o P r o c e s s o

Referências

Documentos relacionados

A perspectiva que destaca a imposição de modelos chama a atenção para a dimensão política (relativa a poder) implícita nos processos de disseminação e destaca a capacidade

I - atendimento preferencial à pessoa com deficiência nas dependências das Instituições de Ensino Superior (IES) e nos serviços; II - disponibilização de formulário de inscrição

Enfim, sustentamos nossa recomendação para a Suzano, em função: (i) melhor perspectivas do setor de Papel & Celulose - setor segue trajetória positiva, após melhora

O resultado operacional das Lojas Renner no 2T18 veio em linha com o esperado pelo mercado nas principais linhas.. Destaque para o lucro líquido da Companhia, que

Como referência a tabela de curvas de crescimento da WHO/OMS (2007) sobre os índices de estatura por idade, 45% das crianças se encontraram no percentil 50 (figura4), na média da

RAFAEL MENDES PALLUDO, Juiz Eleitoral, Matrícula 802096, CPF nº 914.747.950-72, lotado na 59ª Zona Eleitoral, Cristino Castro-PI, tendo por objetivo o atendimento das necessidades

Processos que não estão em regiões críticas não podem bloquear outros processos que desejam utilizar regiões críticas.. Processos não podem esperar para sempre para

História dos rostos esquecidos: a violência no olhar sobre os moradores das favelas cariocas.. Dissertação de Mestrado – Pontifícia Universidade Católica do Rio de