universidade federal fluminense escola de engenharia departamento de engenharia de...
TRANSCRIPT
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
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
Distribuições do Linux
Tabela 1: Distribuições do Sistema Linux
Componentes do Sistema Linux
Figura 1: Diagramada do LINUX.
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
Não é de domínio público; O kernel do Linux é distribuído sob GPL
(General Public License);
Licenciamento do Linux
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
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
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
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
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.
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
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
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
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
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
Criação de processo Descritores de processo e estrutura de
tarefas
Gerenciamento de Processo
Figura 2: Descritores
Estados do processo do kernel do Linux
Figura 3: Estados do processo.
Gerenciamento de Processo
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
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
Família de chamada de sistema para gerenciar o escalonador:
Tabela 3: Estados do processo
Escalonamento de Processo
Sincronização de processo é feita por spinlock e semáforos;
Comunicação interprocesso: pipes e memória compartilhada.
Escalonamento de Processo
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
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: