Buscar

Visão Geral dos Processos MINIX 3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 15 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Sistemas Operacionais 
Visão Geral dos Processos 
no MINIX 3 
Prof. Sílvio Fernandes 
UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO 
DEPARTAMENTO DE CIÊNCIAS EXATAS E NATURAIS 
CURSO DE CIÊNCIA DA COMPUTAÇÃO 
Introdução 
 O MINIX 3 é uma coleção de processos que se 
comunicam entre si e também com processos 
de usuário 
 Utilizando uma única primitiva básica de 
comunicação: passagem de mensagem 
 Estrutura mais flexível e modular 
 EX: pode-se substituir o sistema de arquivos inteiro por 
outro completamente diferente, sem nem mesmo 
precisar recompilar o núcleo 
2 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
3 
Init Processo 
Usuário 
Processo 
Usuário 
Processo 
Usuário 
... 
Gerenciador 
de processo 
Sistema 
arquivos 
Servidor 
informações 
Servidor 
rede 
... 
Driver 
disco 
Driver TTY Driver 
ethernet 
... 
Núcleo Tarefa 
relógio 
Tarefa de 
sistema 
Modo 
usuário 
4 
 
3 
 
 
2 
 
1 
Processos 
de usuário 
Processos 
de servidor 
Drivers de 
dispositivo 
Núcleo Modo 
núcleo 
Camada 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
 Camada 1 
 O núcleo escalona processos e gerencia as transições 
entre os estados pronto, executando e bloqueado; 
manipula todas as mensagens; faz o suporte para 
acesso às portas de E/S e interrupções 
 A tarefa de relógio é um driver de dispositivo de E/S, 
pois interage com o hardware que gera sinais de 
temporização, mas não é acessível para o usuário 
 Fornece um conjunto de chamadas de núcleo 
privilegiadas para os drivers e servidores acima dela; 
inclui ler e escrever em portas de E/S, copiar dados 
entre espaços de endereçamento etc. 
4 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
 Camada 1 
 A maior parte do núcleo e as tarefas de relógio e de 
sistema são escritas em C 
 Um pequena parte é escrita em assembly, como 
aquelas que trabalham com o tratamento de 
interrupções, com o mecanismo de chaveamento de 
contexto e as parte de baixo nível da manipulação 
do hardware MMU 
5 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
 Camada 2 
 Os processos dessa camada possuem a maioria dos 
privilégios especiais (como a capacidade de fazer 
chamadas de núcleo) 
 O drivers de dispositivos podem pedir que a tarefa de 
sistema leia ou escreva dados em portas de E/S em 
seu nome 
 É necessário um driver para cada tipo de dispositivo 
 Esses drivers ainda podem fazer chamadas de núcleo 
para solicitar que os dados lidos sejam copiados para 
o espaço de endereçamento de um processo 
diferente 
6 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
 Camada 3 
 Contém os servidores que fornecem serviços úteis 
para os processos de usuário 
 Dois servidores são fundamentais 
 Gerenciador de processos (PM): executa todas as 
chamadas de sistema do MINIX 3 que envolvem iniciar ou 
interromper a execução de processos, como fork, exec, exit, 
alarm e kill; também responsável pelo gerenciamento de 
memória 
 Sistema de arquivos (FS): executa todas as chamadas de 
sistema de arquivo, como read, mount e chdir 
7 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
 Camada 3 
 Ainda possui o servidor de informações (IS) trata de 
tarefas como fornecer informações de depuração e 
status sobre outros drivers e servidores 
 O servidor de reencarnação (RS) que inicia (e, se 
necessário reinicia) drivers de dispositivos que não são 
carregados em memória ao mesmo tempo que o 
núcleo 
 Em um sistema em rede, o servidor de rede também 
está presente 
 O sistema não precisa ser recompilado para incluir 
mais servidores 
8 
Estrutura Interna do MINIX 3 
 É importante entender a diferença entre 
chamada de núcleo e chamada de sistema 
do POSIX 
 Chamadas de núcleo são funções de baixo nível 
fornecidas pela tarefa de sistema para permitir que 
os drivers e servidores realizem seu trabalho 
 Chamadas de sistema POSIX são de alto nível 
definidas pelo padrão POSIX e estão disponíveis para 
programas de usuário na camada 4 
9 
Estrutura Interna do MINIX 3 
 O MINIX 3 é estruturado em 4 camadas 
 Camada 4 
 Contém todos os processos de usuário 
 Alguns processos são ativados quando o sistema é 
inicializado e executam eternamente, como init 
 Um daemon é um processo em segundo plano 
executado periodicamente ou que espera a 
ocorrência de algum evento 
 Assim como servidores, é possível configurar daemons 
com mais alta prioridade que processo de usuário 
 O processo service fornece uma interface para o 
servidor de reencarnação que o gerencia 
10 
Gerenciamento de Processos no 
MINIX 3 
 Os processos podem criar subprocessos, os 
quais podem criar outros subprocessos, 
produzindo uma árvore 
 Todos os processos de usuário fazem parte de 
uma única árvore, com init na raiz 
 Os drivers e servidores são casos especiais já 
que alguns deles devem ser executados antes 
de qualquer processo de usuário e mesmo do 
processo init 
11 
Gerenciamento de Processos no 
MINIX 3 
 Inicialização do MINIX 3 
 O núcleo inicia as tarefas de sistema de relógio e 
depois o gerenciador de processos e o sistema de 
arquivos 
 O ger. processos e sist. de arquivos cooperam na 
inicialização de outros servidores e drivers que serão 
bloqueados, na espera de algo para fazer 
 O escalonamento no MINIX 3 é baseado em 
prioridade 
 Somente quando todas as tarefas, drivers e servidores 
carregados na imagem de boot tiverem sido 
bloqueados é que init, o 1º processo de usuário, será 
executado 
12 
Gerenciamento de Processos no 
MINIX 3 
 Inicialização do MINIX 3 
13 
Componente Descrição Carregado por 
kernel Núcleo + tarefas de relógio e de sistema Na imagem de boot 
pm Gerenciador de processos Na imagem de boot 
fs Sistema de arquivos Na imagem de boot 
rs (Re)inicia servidores e drivers Na imagem de boot 
memory Driver de disco de RAM Na imagem de boot 
log Registra informações de log Na imagem de boot 
tty Driver de console e teclado Na imagem de boot 
driver Driver de disco (at, bios ou floppy) Na imagem de boot 
init Pai de todos os processos de usuário Na imagem de boot 
floppy Driver de disq. (se inicialização de HD) /etc/rc 
is Servidor de informações /etc/rc 
cmos Lê o relógio da CMOS para configurar a hora /etc/rc 
random Gerador de números aleatórios /etc/rc 
printer Driver de impressora /etc/rc 
Gerenciamento de Processos no 
MINIX 3 
 Inicialização do MINIX 3 
 Init executa primeiro o script de shell /etc/rc 
 Esse script inicia drivers e servidores adicionais que 
não fazem parte da imagem de boot 
 Os servidores e driver necessários estão inicialmente 
no diretório /sbin 
 Outros comandos necessários para a inicialização 
estão em /bin 
 Quando as etapas de inicialização iniciais tiverem 
terminado, outros sistemas de arquivo, como /usr, 
serão montados 
 A tarefa final de /etc/rc é iniciar daemons 
14 
Referências 
 TANENBAUM, Andrew S.; WOODHULL, Albert S. 
Sistemas Operacionais: Projeto e 
Implementação. 3ª Ed., Prentice Hall, 2008. 
 TANENBAUM, Andrew S. Sistemas Operacionais 
Modernos. 3ª Ed., Prentice Hall, 2009. 
15

Continue navegando