22
Estudo do MINIX: Parte 2 PCS-2042 –Sistemas Operacionais – 2ª etapa do projeto Erick Butler Poletto Felipe Giunte Yoshida Gabriel Iseppe Porto Geovandro Carlos C. F. Pereira Gabriel Augusto de Resende Hugo Pessoa de Barauna

Estudo do MINIX: Parte 2

  • Upload
    odele

  • View
    45

  • Download
    0

Embed Size (px)

DESCRIPTION

Estudo do MINIX: Parte 2. PCS-2042 –Sistemas Operacionais – 2ª etapa do projeto Erick Butler Poletto Felipe Giunte Yoshida Gabriel Iseppe Porto Geovandro Carlos C. F. Pereira Gabriel Augusto de Resende Hugo Pessoa de Barauna. Sistemas Operacionais. Pergunta 1:. - PowerPoint PPT Presentation

Citation preview

Page 1: Estudo do MINIX: Parte 2

Estudo do MINIX: Parte 2PCS-2042 –Sistemas Operacionais – 2ª etapa do projeto

Erick Butler Poletto Felipe Giunte Yoshida Gabriel Iseppe Porto Geovandro Carlos C. F. PereiraGabriel Augusto de ResendeHugo Pessoa de Barauna

Page 2: Estudo do MINIX: Parte 2

Pergunta 1:Sistem

as Operacionais

Como funciona o mknod? O que é major number e minor number ao se criar um driver?

Page 3: Estudo do MINIX: Parte 2

mknodSistem

as Operacionais

Função:

•Criar novos arquivos especiais (arquivos que representam dispositivos)

Arquivos especiais:

•de Caractere

•de Bloco

Page 4: Estudo do MINIX: Parte 2

mknodSistem

as Operacionais

Uso: mknod /dev/lpx c 18 0

Page 5: Estudo do MINIX: Parte 2

Major e Minor numberSistem

as Operacionais

Major Number

• Identifica driver

• Index da tabela de dispotivos

Minor Number

•Distinguir diferentes dispositivos que usam mesmo driver

Page 6: Estudo do MINIX: Parte 2

Major e Minor numberSistem

as Operacionais

/usr/src/servers/fs/dmap.c

Page 7: Estudo do MINIX: Parte 2

Major e Minor numberSistem

as Operacionais

Page 8: Estudo do MINIX: Parte 2

Como mknod funciona?Sistem

as Operacionais

Page 9: Estudo do MINIX: Parte 2

Pergunta 2:Sistem

as Operacionais

Crie /dev/lpx com um major number diferente de /dev/lp.

Recompile o driver da porta paralela para que ele fique associado ao major number dado por /dev/lpx.

Page 10: Estudo do MINIX: Parte 2

Criando /dev/lpx:Sistem

as Operacionais

mknod /dev/lpx c 18 0

Page 11: Estudo do MINIX: Parte 2

Qual abordagem?Sistem

as Operacionais

Encotramos duas abordagens:

1.Hard Code

2.On the fly

Page 12: Estudo do MINIX: Parte 2

Hard CodeSistem

as Operacionais

Associar driver e dipositivo no boot,

COMO?

Page 13: Estudo do MINIX: Parte 2

Hard Code: caminho das pedras 1Sistem

as Operacionais

1.Adicionar o dipositivo na tabela de dispositivos

2.Colocar o driver na tabela de processos inicializados no boot (/usr/src/kernel/table.c)

3.Como associar o drive carregado com o dipositivo?

ROTINA map_driver(major, proc_nr, style), do arquivo /usr/src/servers/fs/dmap.c

Page 14: Estudo do MINIX: Parte 2

Hard Code: caminho das pedras 2Sistem

as Operacionais

1.Adicionar o dipositivo na tabela de dispositivos

2.Mudar o arquivo /etc/rc ou o /usr/src/servers/init/init.c?

Page 15: Estudo do MINIX: Parte 2

On the flySistem

as Operacionais

1.service up /usr/sbin/printer – dev /dev/lpx

2.Não tem outro passo, é só isso!!!

Page 16: Estudo do MINIX: Parte 2

Como funciona o service up?Sistem

as Operacionais

Service:

Utilitário que prove interface com o RS

(Reincarnation Server)

Page 17: Estudo do MINIX: Parte 2

Reincarnation Server (RS)Sistem

as Operacionais

Função: Transformar ordinary user

processes em system processes

Page 18: Estudo do MINIX: Parte 2

Como funciona service up?Sistem

as Operacionais

Page 19: Estudo do MINIX: Parte 2

Teste finalSistem

as Operacionais

1. mknod lpx c 18 0

2. service up /usr/sbin/printer -dev /dev/lpx

3. echo HUGOBARAUNA > /dev/lpx

Page 20: Estudo do MINIX: Parte 2

Teste finalSistem

as Operacionais

Page 21: Estudo do MINIX: Parte 2

Teste finalSistem

as Operacionais

Page 22: Estudo do MINIX: Parte 2

Sistemas O

peracionaisHack it!