2.5 Processos no Minix - PowerPoint PPT Presentation

1 / 15
About This Presentation
Title:

2.5 Processos no Minix

Description:

2.5 Processos no Minix 1. gerenciamento de processos: interrup oes e traps. 2. tarefas de E/S: disco, tty, rel gio, sistema, ethernet. 3. gerenciador de mem ria ... – PowerPoint PPT presentation

Number of Views:47
Avg rating:3.0/5.0
Slides: 16
Provided by: pcsUspBr
Category:
Tags: minix | processos

less

Transcript and Presenter's Notes

Title: 2.5 Processos no Minix


1
2.5 Processos no Minix
  • 1. gerenciamento de processos
  • interrupçoes e traps.
  • 2. tarefas de E/S disco, tty, relógio, sistema,
    ethernet.
  • 3. gerenciador de memória, arquivos, rede
  • 4. init, processos de usuários.

2
1. gerenciar processos
  • - capturar traps e interrupções
  • salvar e recuperar estado
  • agendar
  • - tratar as mensagens
  • destinos são legais?
  • localizar buffers de envio e recebimento na
    memória.
  • copiar bytes do remetente para o destinatário.

3
2. tarefas (drivers) de E/S
  • - fornece serviços
  • (open, read, write ...).
  • obs camada 1 e 2 em um bloco binário chamado
    kernel. Camada 1 possui mais privilégios que a
    2.

4
3. gerenciadores FM e MM
  • - fornece serviços para os processos de usuário.
  • - executam com menos privilégio que o kernel
  • não acessa portas de I/O,
  • nem memória for a do seu segmento
  • - MM fork, exec.
  • - FS read, mount, chdir.
  • - agendador dá prioridade mais alta que a
    processos de usuário (mesmo para processador).

5
4. Processos de usuário
  • - init, shell, editores, compiladores,
  • - deamon espera algum evento como a chegada de
    um pacote de rede.

6
2.5.2 minix x processos
  • - árvore de processos init é raiz.

7
Inicialização (fig. 2.31)
  • disco rígido
  • - MBR tabela de partições
  • - partições.
  • programa em MBR (lilo)
  • - lê a tabela de partição
  • - seleciona partição ativa.
  • -- programa de inicialização no setor 1 da
    partição ativa disquete.

8
Boot
  • - carrega e dispara kernel, MM, FM, init.
  • (diferentes prioridades).

9
init
  • - lê /etc/ttytab
  • Device Type Program
    Init
  • console minix getty
  • ttyc1 minix getty
  • ttyc2 minix getty
  • - dispara getty -gtexec login -gt exec shell
    (/etc/passwd)
  • - shell fica como filho de init.

10
fork e exec
  • - fork cria um novo processo
  • - exec faz o processo executar um programa.
  • - recebe memória cabeçalho do prog.
  • - tabela de processos kernel, FM, MM.

11
Comunicação interprocesso
  • - send(dest, message)
  • - receive(source, message)
  • - send_rec(src_dst, message)
  • não vai para rede, trabalha com ponteiros.
  • o processo que envia fica bloqueado até que a
    mensagem seja recebida
  • conversa com mesma camada ou uma abaixo.

12
Agendamento de processos
  • Ativado quando
  • - interrupção de I/O
  • - relógio
  • - término do processo
  • Utiliza 3 filas camadas 2,3,4.
  • 2,3 executa até bloquear.
  • 4 round robin.

13
Interrupção I/O
  • dispositivo gt controlador de interrupção.
  • controlador (hw)
  • 1. interrompe CPU.
  • 2. envia identificação da origem da interrupção
  • kernel (sw)
  • 1. salva registradores
  • 2. sw. de driver, faz I/O (ex teclado leu tecla,
    pega dados e prepara msg).
  • 3. envia mensagem.
  • 4. reinicia um processo

14
System call
  • Procedimento que faz system call (ex fork na lib
    posix).
  • 1. coloca o ponteiro de mensagem e o destino em
    registradores da CPU.
  • 2. executa trap.
  • kernel
  • 1. salva registradores
  • 2. envia e/ou recebe mensagem
  • 3. reinicia um processo

15
Perguntas
  • - localize o código da system call fork
  • (até syscall.c _sendrec.c)
  • - localize o código do agendador (2.6.9) proc.c
  • - localize o código do init.
Write a Comment
User Comments (0)
About PowerShow.com