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

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

Embed Size (px)

Citation preview

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: