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

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

Processo Entidade dinâmica e efêmera

Apresentações semelhantes


Apresentação em tema: "Processo Entidade dinâmica e efêmera"— Transcrição da apresentação:

1 Processo Entidade dinâmica e efêmera
Composto por Altera seu estado à medida que avança sua execução Forma pela qual o SO “enxerga” um programa e possibilita sua execução Processos executam Programa (código) Dados e contexto (valores) Prog. de usuários Prog. do próprio SO (daemons)

2 Ciclo de vida de um processo
Criação Execução Término

3 Ciclo de vida de um processo
Criação Momento da execução Chamadas de sistema (fork, spawn, etc) Podem ser associados a uma sessão de trabalho (login de usuários) Identificado por um n° único (PID)

4 Ciclo de vida de um processo
Execução Processos apresentam dois ciclos básicos de operação: Ciclo de processador (tempo em que ocupa a CPU) Ciclo de E\S (tempo em que espera pela conclusão de um evento) Primeiro ciclo sempre é do processador!

5 Ciclo de vida de um processo
Execução: Troca de ciclo por: CPU E\S: chamada de sistema E\S CPU: ocorrência de evento (interrupção) Situação ideal – Misturar processos CPU com E\S (Benefícios para escalonamento)

6 Ciclo de vida de um processo
Término: Final de execução normal Por erros (Ex.: Proteção, aritméticos, E\S, tentativa de execução de instruções inválidas, falta de memória, exceder tempo de limite) Intervenção de outros processos (kill) Log off de usuários

7 Relacionamentos entre processos
Processos independentes – não apresentam relacionamento com outros processos Grupo de processos Hierarquia Representação através de uma árvore – evolução dinâmica Algum tipo de relação (filiação) Compartilham recursos Definição de hierarquia Processo criador é processo pai Processo criado é processo filho

8 Estados de um processo Após criado o processo necessita entrar em ciclo de processador Existem algumas hipóteses Processador não esta disponível Vários processos sendo criados Que fazer? Criação de uma fila de aptos (para esperar pelo processador)

9 Modelo Simplificado de Dois Estados
Manter uma fila de processos aptos a 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

10 Modelo Simplificado de Dois Estados
Dispatcher Pausa Criação Término Apto Executando

11 Modelo de cinco estados
Criação Apto Executando Destruição Bloqueado Interrupção tempo voluntário seleção call system término

12 Modelo de cinco estados
Causas para um processo não executar Esperando pelo processador Esperando pela ocorrência de eventos externos (bloqueado) Necessidade de filas!

13 Mecanismos de Interrupção
Sinaliza a ocorrência de algum evento Provoca a execução de uma rotina especial (tratador de interrupção) Ciclo de execução de uma interrupção: Prepara a transferência de controle para o tratador (salvamento do contexto de execução) Desvia controle para tratador Retorna execução (restaura contexto de execução)

14 Tipos de Interrupção Hardware: ocorrência de eventos externos
Software: execução de uma instrução específica Exceção: erros de execução (overflow)

15 Chamada de Sistema Método empregado para um processo usuário solicitar serviços ao SO: Normalmente baseado em interrupções de software (traps) Aciona a rotina de tratamento de interrupções: Identifica serviço requisitado Verifica validade dos parâmetros Executa o serviço Retorna ao processo do usuário

16 Estrutura de SO Monolíticos Sistemas Camadas Máquinas Virtuais
Modelo Cliente-Servidor

17 Monolíticos Não há nenhuma estrutura, o SO é escrito como uma coleção de procedimentos. Ex.: Linux. Pode ser comparado com uma aplicação formada por vários procedimentos que são compilados separadamente e linkados, formando um único e grande programa executável.

18 Monolíticos

19 Sistemas Camadas Hierarquia de camadas construídas uma sobre a outra. Divide o SO em sistemas sobrepostos. Ex.: Minix. A vantagem da estruturação em camadas é isolar o SO, facilitando sua alteração e depuração, além de criar uma hierarquia de níveis de modos, protegendo as camadas mais internas.

20 Sistemas Camadas

21 Máquinas Virtuais Camada idêntica ao hardware que executa vários sistemas operacionais.

22 Modelo Cliente-Servidor
Remove código para camadas mais altas. Gerenciar processo cliente e processo servidor. Ex.: Windows NT. Desta forma, sempre que uma aplicação deseja algum serviço ela solicita ao processo responsável, assim, a aplicação que solicita um serviço é chamada de cliente e o processo que responde é chamado de servidor.

23 Modelo Cliente-Servidor
A utilização deste modelo permite que os servidores executem em modo usuário. Apenas o núcleo do sistema, responsável pela comunicação entre clientes e servidores, execute o modo kernel. Não importa se o serviço esta sendo processado em um único processador, com múltiplos processadores (fortemente acoplado) ou em sistema distribuído (fracamente acoplado).

24 Modelo Cliente-Servidor

25 Próxima aula Processo x Concorrência Região Crítica e Exclusão Mútua


Carregar ppt "Processo Entidade dinâmica e efêmera"

Apresentações semelhantes


Anúncios Google