Processos no Minix 3.1.7

Documentos relacionados
GERENCIAMENTO DE PROCESSOS E MEMÓRIA

Estruturas de Sistemas Operacionais

SUMÁRIO. 1.3 CONCEITOS DE SISTEMA OPERACIONAL Processos Arquivos O shell 42

Estrutura do Sistema Operacional

Estrutura dos Sistemas Operacionais. Adão de Melo Neto

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

MINIX: Gerenciamento de Processos e Memória

Fundamentos da Informática Aula 03 - Sistemas operacionais: Software em segundo plano Exercícios Professor: Danilo Giacobo

Introdução aos Sistemas Operacionais

Estudo de Caso 1: UNIX e LINUX

Fundamentos de Sistemas Operacionais de Arquitetura Aberta. CST em Redes de Computadores

Sistemas Embarcados. Filesystem Hierarchy Standard (FHS) Root filesystem. Aula 06

Tipos de usuários do Linux Root Usuário Comum: #

Arquitetura de Sistemas Operacionais

UFRJ IM - DCC. Sistemas Operacionais I. Unidade IV Gerência de Recursos Entrada e Saída. 02/12/2014 Prof. Valeria M. Bastos

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO O SISTEMA OPERACIONAL PROFESSOR CARLOS MUNIZ

Sistemas Operacionais Processos. Carlos Ferraz Jorge Cavalcanti Fonsêca

Sistemas Operacionais. Estrutura do Sistema Operacional

Sistemas Operacionais Aula 3

Conceitos básicos e serviços dos Sistemas Operacionais

Sistemas Operacionais. Laboratório 1 (Ambiente de Aprendizado)

Sistemas Operacionais II. Linux 2: Threads, Escalonamento, Gerenciamento de Memória e Sistemas de Arquivos

Administração Central Cetec Capacitações Capacitação Sistema Operacional Linux Semana III

Introdução a Administração de Sistemas GNU/Linux

Sistemas de Entrada e Saída

Hierarquia de Diretórios da Família Linux. Sistemas Operacionais 1

Técnico Subsequente em Redes de Computadores Introdução a Sistemas Abertos (ISA)

MINIX File System Visualização de i-nodes e blocos

Estrutura dos Sistemas Operacionais. Adão de Melo Neto

Sistemas Operacionais

Editor: Rubens Prates Revisão gramatical: Marta Almeida de Sá Editoração eletrônica: Carolina Kuwabata Assistente editorial: Priscila A.

Gerência de Dispositivos. Adão de Melo Neto

Aula 5 Arquitetura do Sistema Operacional

Administração de Sistemas Operacionais

LABORATÓRIO DE SISTEMAS OPERACIONAIS. PROFª. M.Sc. JULIANA HOFFMANN QUINONEZ BENACCHIO

Gerência de Dispositivos. Adão de Melo Neto

Introdução à Sistemas Operacionais

Sistemas Operacionais. Prof. MSc André Y. Kusumoto

Chamadas de Sistema (SYSCALL)

Sistemas Operativos I/O. Rui Maranhão

Sistemas Operacionais. Entrada/Saída

Sistemas Operacionais

Sistemas de Operação

Sistemas Operacionais Prof. André Y. Kusumoto

Noções de Processos. Plano da aula. Serviços oferecidos. Definição & Objetivos. Definição & Objetivos. Sistemas Operacionais : introdução

Sistemas Operacionais. Conceito de Processos

SSC0640 Sistemas Operacionais I

Capítulo 2. Multiprogramação. Conteúdo. Objetivo. Recordando. Recordando. DCA-108 Sistemas Operacionais

Estrutura dos Sistemas Operacionais. Sérgio Portari Júnior

INTRODUÇÃO À TECNOLOGIA DA INFORMAÇÃO ESTRUTURA DE UM SISTEMA OPERACIONAL PROFESSOR CARLOS MUNIZ

LabSO Gerência de Processos. Processos. Porque eu preciso entender este assunto?

Programação Aplicada a Redes de Computadores Shell Script

Notas da Aula 2 - Fundamentos de Sistemas Operacionais

Sistemas Operacionais

Interpretador de comandos Formas de envio de Comandos Terminal Linux Curingas Listando Placas Particularidades. Aula 02

MÓDULO 01 INTRODUÇÃO AO LINUX

Introdução aos Sistemas Operacionais. Subsistema de Entrada e Saída

Sistemas Operacionais

Introdução. Introdução aos Sistemas Operacionais Volnys Bernal. Agenda. Introdução aos Sistemas Operacionais. Sobre estes slides

Introdução ao Linux. Professor Breno Leonardo G. de M. Araújo

Sistemas de Arquivos. (Aula 23)

Administração de sistemas Linux. Estrutura de diretórios Linux O diretório /etc

Sistemas de Entrada e Saída

b. Causa parada do processo c. Reinicia um processo parado d. O processo é enviado para primeiro plano e. O processo é enviado para segundo plano 5)

Transcrição:

Processos no Minix 3.1.7 Prof. Alexandre Beletti Conteúdo do Material Visão de Geral Processos no Minix (2.5 3ª ed.) Implementação de Processo (2.6 3ª ed.) Estrutura do Código Fonte Arquivos de include 1

Estrutura em Camadas Alguns detalhes Modo núcleo x Modo kernel A Tarefa de Sistema e o Relógio tem seu escalonamento realizado separadamente Boa parte de código do Minix é escrito em C Tratamento de Interrupções e Chaveamento de Processos é escrito em Assembly 2

Chamadas de Núcleo x de Sistema Chamadas de Núcleo = funções de baixo nível fornecidas pela Tarefa de Sistema para permitir que drivers e servidores trabalhem (Ex: ler uma porta de E/S) Chamadas de Sistema (POSIX) = chamadas de alto nível disponíveis para os programas de usuário (Ex: read, fork e unlink) Daemon Processo em segundo plano executando periodicamente e que espera a execução de algum evento Servidor iniciado independentemente e executado como um processo de usuário 3

Inicialização da Árvore de Processos Init = primeiro processo de usuário e o último processo a ser carregado como parte da imagem de boot, possui PID = 1 CLOCK e SYTEM não tem PID (na verdade possuem PID negativo) PM = primeiro processo a ser executado em espaço de usuário, possui PID = 0 Principais Componentes do Minix 4

Init (PID = 1) Init se torna um dos filhos do RS, assim como outros servidores Executa o script: /etc/rc Esse script inicia drivers que não fazem parte da imagem do kernel Todo programa executado por esse script será filho de Init Um dos primeiros é o utilitário service RS (PID = 4) RS = Reincarnation Server O service é a interface do usuário com o RS Inicia um programa padrão e o converte em processo de sistema Por exemplo o servidor is Adota como filho todos os processos de sistema, exceto o gerenciador de processos 5

/etc/rc = Outros detalhes Executar alguns servidores e comandos /sbin = servidores e drivers /bin = alguns comandos p/ inicialização Montar o diretório Verificar erros no sistema de arquivos Verifica a última linha de /usr/adm/wtmp Se for o comando shutdown então OK Senão faz uso do fsck Init + Login (getty + sh) Init lê o arquivo /etc/ttytab (lista com terminais) Por padrão até 3 consoles virtuais (ttyc1 a ttyc3) Existe uma entrada no campo getty (/etc/ttytab) Init cria um proc.filho para cada terminal de login Cada filho executa /usr/bin/getty que imprime uma msg e espera o login Nome de usuário e senha verificados por /usr/bin/login Se login OK, chama /bin/sh (veja /etc/passwd) 6

Estrutura do Código Fonte Source CADAMA 1 - Kernel Diretório: /usr/src/kernel Contéudo: Escalonador, Mensagens, Relógio e Tarefas de Sistema CAMADA 2 - Drivers Diretório: /usr/src/drivers Conteúdo: Drivers de disco, console, impressora. CAMADA 3 - Servers Diretório: /usr/src/servers Conteúdo: PM, FS, etc. 7

Compilando o Kernel Acesse o diretório: /usr/src/tools Digite: make image O que ocorre na compilação: kernel/ = Binário do núcleo servers/pm = Binário do PM (Process Management) servers/fs = Binário do FS (File System) servers/rs = Binário do RS (Reincarnation Server) drivers/memory drivers/log drivers/tty Imagem de Boot= (kernel + PM + FS + Init...) Diretório da Imagem = /boot Arquivos de include 8

Arquivos de Include /usr/src/include signal.h = Sinais de Processos fcntl.h = Símbolos de operações com arquivos sys/dir.h = Estrutura de Diretórios minix/config.h = Alterações do Hardware minix/sys_config.h = Definições para um programador de sistemas minix/type.h = Mapa de Memória signal.h 9

signal.h dir.h 10

IPC - Mensagens 7 formatos distintos de mensagens (mess_1 a mess_8, exceto mess_6) Campos de Mensagem m_source = origem m_type = tipo (Ex: SYS_EXEC) Primitivas de comunicação: send = Envio de Mensagem (Bloqueante) receive= Recebimento (Bloqueante) sendrec = Envio/Receb. (Bloqueante) notify = Notificação (NÃO BLOQUEANTE!) ipc.h - Tipos de Mensagens 11

ipc.h Estrutura da Mensagem ipc.h Primitivas de Mensagens 12