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

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

Sistemas Operacionais

Apresentações semelhantes


Apresentação em tema: "Sistemas Operacionais"— Transcrição da apresentação:

1 Sistemas Operacionais
Gerenciador de Processos

2 Gerenciador de processo Processos
Um processo é um programa em execução que utiliza recursos, incluindo tempo de CPU, memória, arquivos e dispositivos de E/S. O sistema operacional é responsável pelas seguintes atividades em conjunto com o gerenciador de processos: Criação e exclusão de processos. Suspensão e resumo de processos. Provisão dos mecanismos de: Sincronização de processos Comunicação entre processos Multiprogramação: Pseudoparalelismo: coleção de processos sendo executados alternadamente na CPU;

3 Gerenciador de processo Processos
Prioridade dos processos Tempo Real Tempo Compartilhado

4 Processos Processo Pai A B C E F D Processo Filho Processo Pai e Filho

5 Threads e Processos Um processo pode ser composto por várias threads.

6 Threads do Windows Explorer

7

8 Threads Descrição Estado Pronto (ready)
Indica que o thread aguarda apenas por uma chance para ser executado (espera pela UCP) Standby Thread selecionado para execução e aguarda troca de contexto. Somente um processo em standby por processador Execução (running) Indica que o processo, de posse da UCP, está sendo executado Espera (waiting) Indica que o processo aguarda por algum evento (p.ex., operação de E/S) Transição (transition) Indica que o processo aguarda por algum recurso do sistema para poder ser executado. Terminado (terminated) Quando termina sua execução, o thread é colocado no estado terminado, podendo ser eliminado ou não.

9 Criando Processos Processos precisam ser criados e finalizados a todo o momento: Inicialização do sistema; Execução de uma chamada de sistema realizada por algum processo em execução; Requisição de usuário para criar um novo processo; Inicialização de um processo em batch – mainframes com sistemas em batch;

10 Criando Processos Processos específicos para usuários específicos:
Leitura de um arquivo; Iniciar um programa (linha de comando ou um duplo clique no mouse); Processos com funções específicas que independem de usuários – chamados de daemons: Recepção e envio de s; Serviços de Impressão;

11 Criando Processos UNIX: Fork Windows: CreateProcess

12 Finalizando Processos
Condições: Término normal (voluntário): A tarefa a ser executada é finalizada; Chamadas: exit (UNIX) e ExitProcess (Windows) Término com erro (voluntário): O processo sendo executado não pode ser finalizado: gcc filename.c, o arquivo filename.c não existe;

13 Finalizando Processos
Término com erro fatal (involuntário); Erro causado por algum bug no programa: Divisão por 0 (zero); Término causado por algum outro processo (involuntário): Kill (UNIX) e TerminateProcess (Windows);

14 Chamada de sistema (Kernel)
Escalonamento (RAM) Programa de usuário 2 Programas de usuário rodam no modo usuário Programa de usuário 1 M E Ó R I A P N C L Chamada de sistema (Kernel) 4 Procedimentos de serviço 3 Rotinas do sistema operacional rodam no modo Kernel (ou modo supervisor) 1 Tabela de escalonamento 2

15 Escalonamento (tempo)

16 Escalonamento P3 P2 P1 PILHA RAM Pop Pop Push Pop Push Push Uso da CPU
UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA REGISTRADORES A C B D PC IR Push P2 Pop UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA REGISTRADORES A C B D PC IR Push P1 UNIDADE DE CONTROLE UNIDADE LÓGICA E ARITMÉTICA REGISTRADORES A C B D PC IR Push Uso da CPU Troca de Contexto Uso de I/O

17 Escalonamento (conceitos)
Quanto a Troca de Contexto Preemptivo Não preemptivo Quanto a Atividade I/O bound CPU bound


Carregar ppt "Sistemas Operacionais"

Apresentações semelhantes


Anúncios Google