A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

IC - UFF Sistemas Operacionais 2. Processos Texto base: capítulos 3 e 4 Operating Systems: Internals and Design Principles W. Stallings.

Apresentações semelhantes


Apresentação em tema: "IC - UFF Sistemas Operacionais 2. Processos Texto base: capítulos 3 e 4 Operating Systems: Internals and Design Principles W. Stallings."— Transcrição da apresentação:

1 IC - UFF Sistemas Operacionais 2. Processos Texto base: capítulos 3 e 4 Operating Systems: Internals and Design Principles W. Stallings

2 IC - UFF O conceito de processos l No capítulo 1, fizemos as seguintes afirmativas quanto aos processos: n Mais geral que programa n Consiste em um código executável e seus dados associados, além de um contexto de execução

3 IC - UFF Enfim,... l Um processo é uma abstração de um programa em execução l Exemplo: n fazer um bolo... n... primeiros socorros!

4 IC - UFF O que esperar do SO? l Alternar a execução de processos de forma a maximizar a utilização da UCP e fornecer tempo de resposta razoável l Alocar recursos a processos l Suportar criação de processos pelo usuário l Suportar comunicação entre processos

5 IC - UFF Modelo simples de processo executando não- executando despacho pausa entrasai (a) diagrama de transição de estado UCP sai entradespacho pausa fila (b) possível implementação

6 IC - UFF Criando de processos l O que faz o SO para criar processos? n constrói estruturas de dados n aloca espaço de endereçamento l Quando cria? n quando usuário abre sessão; n quando gerado por outro processo (e.g., servidor de FTP);...

7 IC - UFF Terminando processos l Quando terminar? n execução da instrução Halt; n condições de erro;... l Algumas razões para o término: n tempo excedido; n falta de memória; n uso de instrução privilegiada; n término do processo pai;...

8 IC - UFF Problema com o modelo simples l Um processo que não está executando estará sempre pronto a executar? l Não: pode estar bloqueado esperando E/S! despachante não pode simplesmente ppegar um processo que esteja na fila

9 IC - UFF Um modelo mais elaborado executando pronto despacho pausa admissão liberação saída novo bloqueado espera evento ocorre

10 IC - UFF Implementando o modelo (1) UCP liberação admissão despacho pausa fila dos prontos evento ocorre espera evento fila dos bloqueados

11 IC - UFF Implementando o modelo (2) UCP liberação admissão despacho pausa fila dos prontos evento 1 ocorre espera evento 1 fila evento 1 espera evento 2 fila evento 2 evento 2 ocorre

12 IC - UFF Implementando o modelo (3) evento 1 ocorre UCP liberação admissão despacho pausa prioridade 1 espera evento 1 fila evento 1 espera evento 2 fila evento 2 prioridade 2 evento 2 ocorre

13 IC - UFF O estado Suspenso l O processador é muito mais rápido que E/S: todos os processos podem estar bloqueados l Swapping l Necessidade de novo estado: representação de processo suspenso

14 IC - UFF Diagrama com estado Suspenso executando pronto despacho pausa admissão liberação saída novo bloqueado espera evento ocorre suspenso ativação suspensão

15 IC - UFF Pensando melhor... executando pronto despacho pausa admissão liberação saída pronto- suspenso bloqueado espera evento ocorre suspenso- bloqueado evento ocorre ativa suspende admissão novo ativa suspende

16 IC - UFF O que o SO deve fazer? l Em um sistema multi-tarefas, o SO deverá: n escalonar e despachar processos para execução n alocar recursos aos processos n responder a pedidos de recursos feitos pelos programas dos usuários l Como fazer?

17 IC - UFF Tabelas! l Tabelas de memória n e.g., alocação de MP aos processos l Tabelas de E/S n e.g., estado de dispositivo de E/S l Tabelas de arquivos n localização de arquivos em MS l Tabelas de processos n e.g., lista de processos existentes

18 IC - UFF Controlando processos l Para gerenciar processos o SO precisa conhecer: n onde o processo está localizado n os atributos do processo l Como é representado um processo? n imagem do processo: programa + dados + pilha(s) + atributos

19 IC - UFF Atributos do processo l O conjunto dos atributos de um processo é conhecido como bloco de controle do processo (PCB, em inglês) l PCB pode ser dividido em três partes: n identificação do processo n informação de estado do processador n informação de controle do processo

20 IC - UFF Identificação do processo l Feita por identificadores numéricos que incluem: n identificador do processo n identificador do processo que o criou n identificador do usuário

21 IC - UFF Informação do processador l Contida nos registradores do processador: n registradores visíveis ao usuário (aqueles referenciados por programa) n registradores de controle e estado (e.g., PC, códigos de condição) n apontadores de pilha

22 IC - UFF Informação de controle (1) l Estado e escalonamento, que inclue: n estado do processo (e.g., pronto) n nível corrente de prioridade n suporte ao escalonamento (e.g., há quanto tempo o processo está esperando) n evento (e.g., identificação do evento que o processo está esperando)

23 IC - UFF Informação de controle (2) l Estruturação de dados (e.g., relação pai- filho) l Comunicação entre processos (e.g., sinais) l Privilégios (e.g., tipos de instruções que podem ser executadas) l Gerenciamento de memória (e.g., ponteiro para tabela de páginas) l Propriedade e uso de recursos (e.g., arquivos abertos)

24 IC - UFF Funções típicas do núcleo do SO l Preliminares: n O que é modo dual de operação? n O que é o núcleo do SO? l Funções do núcleo: n gerenciamento de processos n gerenciamento de memória n gerenciamento de E/S n funções de suporte

25 IC - UFF Funções típicas do núcleo do SO l Preliminares: n O que é modo dual de operação? n O que é o núcleo do SO? l Funções do núcleo: n gerenciamento de processos n gerenciamento de memória n gerenciamento de E/S n funções de suporte

26 IC - UFF Gerenciamento de processos (1) n criação e término de processos n escalonamento e despacho n chaveamento n sincronização e suporte a IPC n gerenciamento de PCBs l Funções típicas:

27 IC - UFF Gerenciamento de processos (2) n atribuição de identificador único e adicionar nova linha à tabela primária de processos n alocação de espaço para a imagem n iniciação do PCB n adicionar apontador nas listas apropriadas (e.g., lista de prontos para escalonamento) n outras estruturas: e.g., arquivo de contabilização l Criação de processos

28 IC - UFF Gerenciamento de processos (3) n interrupções l relógio ( mudança de estado, escalonamento) l E/S l falta de memória (página ou segmento) n traps: condições anormais n chamada ao sistema (e.g., operação de E/S) l Quando chavear?

29 IC - UFF Unix: Fork #include int main (int argc, char *argv[ ]) { int pid; /* criação de outro processo por fork */ pid = fork(); if (pid < 0) {/* ocorreu erro */ fprintf(stderr, "Fork falhou"); exit(-1); } else if (pid == 0) {/* processo filho */ execlp ("/bin/ls", "ls", NULL); } else {/* processo pai */ /* processo pai vai esperar o filho terminar */ wait(NULL); printf("Filho terminou\n"); exit(0); }

30 IC - UFF Gerenciamento de memória l Funções típicas: n alocação de espaço de endereçamento aos processos n swapping n gerenciamento de páginas e segmentos

31 IC - UFF Gerenciamento de E/S l Funções típicas: n gerenciamento de buffers n alocação de canais e dispositivos de E/S

32 IC - UFF Funções de suporte l Funções típicas: n tratamento de interrupção n monitoramento n contabilidade

33 IC - UFF Executando o SO l O SO é um programa. Ele é um processo? n núcleo não é processo: conceito de processo só para programas do usuário n funções executadas como processo de usuário: só há chaveamento de modo n SO como conjunto de processos de sistema: funções principais do núcleo como processos

34 IC - UFF Núcleo separado Núcleo P1P1 P2P2 PnPn

35 IC - UFF Funções em modo usuário P1P1 Funções de chaveamento de processos Funções do SO P2P2 Funções do SO PnPn Funções do SO

36 IC - UFF Como processos de sistema U1U1 Funções de chaveamento de processos UnUn Funções do SO 1 Funções do SO m

37 IC - UFF Leitura suplementar l Operating Systems Concepts, A. Silberschatz e P.B. Galvin, Addison- Wesley l Modern Operating Systems, A.S. Tanenbaum, Prentice Hall


Carregar ppt "IC - UFF Sistemas Operacionais 2. Processos Texto base: capítulos 3 e 4 Operating Systems: Internals and Design Principles W. Stallings."

Apresentações semelhantes


Anúncios Google