universidade federal fluminense escola de engenharia departamento de engenharia de...

26
O Sistema Operacional Linux Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores: Bruno Peres Karina Damasceno Cunha Mariana da Costa Santos Victor Ribeiro Leite do Amaral

Upload: internet

Post on 21-Apr-2015

103 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

O Sistema Operacional Linux

Universidade Federal FluminenseEscola de Engenharia

Departamento de Engenharia de TelecomunicaçõesSistemas de Computação para Telecomunicações

Autores: Bruno Peres Karina Damasceno Cunha

Mariana da Costa SantosVictor Ribeiro Leite do Amaral

Page 2: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Sistema UNIX Padrão POSIX Projeto GNU Relação entre UNIX e Linux

◦ Ano 1969 – AT&T Bells Labs◦ Ano 1976 - Universidades◦ Ano 1991 – Linus Torvalds

Distribuições do Linux

Histórico do Linux

Page 3: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Distribuições do Linux

Tabela 1: Distribuições do Sistema Linux

Page 4: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Componentes do Sistema Linux

Figura 1: Diagramada do LINUX.

Page 5: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Facilidade de instalação; Opção de ser o único Sistema operacional

ou não; Diversos meios de instalação:

◦ Live CD/DVD;◦ Live USB;◦ Diretamente no HD.

Instalação e desinstalação de programas; Diversas distribuições;

Instalação do Linux

Page 6: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Não é de domínio público; O kernel do Linux é distribuído sob GPL

(General Public License);

Licenciamento do Linux

Page 7: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Duas formas: automática e manual; Inicialização do kernel: Configuração de Hardware;

◦ Dispositivos físicos;◦ Drivers.

Threads de kernel◦ Processos filhos;◦ Fork();◦ Processo init

Inicializando o Linux

Page 8: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Intervenção do Operador; Execução de scripts de inicialização;

◦ Níveis de execução: Nível 0; Nível 1; Nível 2 a 5; Nível 6.

Operação multiusuário.

Inicializando o Linux

Page 9: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Histórico: Minix e EXT Principais características do ext2:

Nomes de arquivos até 255 caracteres;Tamanho máximo por arquivo: 16GB a

2TB;Tamanho máximo de partição 2 a

32TB. O ext3 e o journaling.

Sistema de Arquivos

Page 10: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Desvantagens do ext3: Limite de 31.998 subdiretórios por diretório; Não há suporte para recuperação de arquivos

deletados; Ausência do checksum no journaling.

O sucessor ext4: Suporta até 16GB por arquivo; Totalmente compatível com as versões

anteriores; Limite de 64.000 subdiretórios por diretório; Journal checksumming.

Sistema de Arquivos

Page 11: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Diretório raiz “/” Sistema de arquivos bagunçado: arquivo

regular, diretório, pipes, link simbólico, etc. Analisar o tipo de arquivo: ls -l

Sistema de Arquivos

Tabela 2: Análise tipo de arquivo.

Page 12: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:
Page 13: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

O que são chamadas de sistema O que é uma API Tipos de chamadas de sistema:

Controle de processosManipulação de arquivosManipulação de dispositivosManutenção de informaçãoComunicaçõesProteção

Chamadas de sistema

Page 14: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:
Page 15: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Controla quais partes da memória está em uso e quais não estão;

Possui dois componentes:◦ Lida com Liberação e alocação da memória física;◦ Manipula a memória virtual;

Gerenciamento de Memória

Page 16: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

A memória física é dividida em 3 regiões:◦ Zone_DMA;◦ Zone_NORMAL;◦ Zone _HIGHMEM.

As zonas são específicas da arquitetura; Alocador de páginas:principal gerenciador

de memória física; Utilização de sistemas de pares;

Gerenciamento de memória física

Page 17: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Diversos subsistemas especializados de gerenciamento de memória utilizam o alocador de página para gerenciar:◦ Sistema de memória virtual;◦ Cache de páginas;◦ Alocador de tamanho variável;◦ Alocação de placas.

Gerenciamento de memória física

Page 18: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Linux é um sistema operacional com memória virtual paginada;

Gerencia o conteúdo do espaço de endereçamento virtual de cada processo;

Mantém visível o espaço de endereçamento para cada processo;

Possui duas visões do espaço de endereçamento de um processo:◦ Conjunto de regiões separadas;◦ Conjunto de páginas.

Memória virtual

Page 19: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Criação de processo Descritores de processo e estrutura de

tarefas

Gerenciamento de Processo

Figura 2: Descritores

Page 20: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Estados do processo do kernel do Linux

Figura 3: Estados do processo.

Gerenciamento de Processo

Page 21: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Contexto do Processo Árvore do Processo Threads Chamadas de sistema clone() :

◦ clone(CLONE_VM |CLONE_FS|CLONE_SIGHAND);◦ CLONE_VM:pai e filho compartilham o espaço de

endereçamento;◦ CLONE_FS:pai e filho compartilham informações do

sistema de arquivos;◦ CLONE_FILES:pai e filho compartilham arquivos abertos;◦ CLONE_SIGHAND:pai e filho compartilham tratadores de

sinais bloqueados.

Gerenciamento de Processo

Page 22: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

No Linux tem dois algoritmos de escalonamento:◦Compartilhamento de tempo: Valor altos → baixa prioridade ->tempo

menor. Valor baixos → alta prioridade ->tempo

maior.◦Baseado em prioridade de tempo real.

Escalonamento de Processo

Page 23: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Família de chamada de sistema para gerenciar o escalonador:

Tabela 3: Estados do processo

Escalonamento de Processo

Page 24: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Sincronização de processo é feita por spinlock e semáforos;

Comunicação interprocesso: pipes e memória compartilhada.

Escalonamento de Processo

Page 25: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Dois problemas:◦Autenticação: Arquivo de senhas; Combinação de caracteres com “salt”; O problema; O mecanismo PAM.

◦Controle de acesso: Dois identificadores (UID & GID); Aplicação em diversos objetos; Máscara de proteção;

Segurança

Page 26: Universidade Federal Fluminense Escola de Engenharia Departamento de Engenharia de Telecomunicações Sistemas de Computação para Telecomunicações Autores:

Qual é o primeiro processo a ser inicializado no Linux?

Cite as duas formas de algoritmo de escalonador.

Cite os principais componentes do kernel. Qual a principal vantagem que o algoritmo

ext3 trouxe ao sistema de arquivos? Quais são os dois componentes de

gerenciamento de memória do Linux?

Perguntas: