Módulos do Kernel Curso: Redes de Computadores Turno: Noturno Disciplina: Introdução a Sistemas Abertos Professor: Jean Galdino Componentes: Andresa Maria Camilla Priscilla Danilo Cordeiro Mateus Pessôa O que é Kernel; Um componente do sistema operacional; Extremamente importante para o funcionamento do computador; Por ser tão importante para o funcionamento do computador, fica escondido das pessoas que não sabem sobre o assunto. Cérebro do S.O.; Interação entre duas camadas; Gerenciamento; Complexidade; O Kernel é muito complexo para ser explicado de maneira técnica, para pessoas inexperientes no assunto; Os módulos são partes do Kernel armazenados em arquivos binários separados; Eles entreveem funções extras, tais como controle de dispositivos e sistemas de arquivos variados; As funcionalidades dos módulos são variadas podendo ser agrupadas em: Suporte a dispositivos: (placa de som, placa de vídeo, placa de rede, USB, etc.): permitem que o SO interaja com os dispositivos; Sistemas de arquivos: (ext2, ext3, FAT, NTFS, LVM, RAID, etc.) : permite interação com variados sistemas de arquivos; Protocolos de rede: (IP, BGP, IPX, etc.): acrescenta ao Kernel um protocolo de rede específico; Tipos de módulos; Os modulos do sistema se encontra nesse diretorio: /lib/modules/’uname –r’/kernel/drivers Os módulos podem ser listados, descarregados e carregados para o sistema em qualquer momento tanto na inicialização quanto após, enquanto o sistema estiver ativo. O comando lsmod permite que o usuário visualize a lista de módulos carregados no sistema; O módulo pode estar carregado, sendo visualizado com o lsmod, mas não ativo. Este comando permite o carregamento dos módulos no sistema; Vantagens: A vantagem é que ele é muito útil quando se necessita carregar módulos com opções; Desvantagem; A sua desvantagem é que ele não consegue trabalhar com dependência entre módulos; No exemplo será solicitado o carregamento de um módulo que necessita que seja carregado uma dependência, o módulo selecionado é o vfat: Ao tentar carregar o módulo vfat diretamente pelo comando insmod ocorreu uma falha, o carregador de módulos não conseguiu resolver alguns símbolos (unresolved symbol) e acabou não conseguindo carregá-lo; Carrega o módulo no sistema resolvendo suas dependências (módulos necessários); As dependências entre os módulos é registrado no arquivo /lib/modules/versão_do_kernel/modules.dep; O comando modprobe ajuda o usuário a evitar a instalação de módulos um a um para satisfazer uma dependência; O comando rmmod permite a remoção de módulos do kernel; Um módulo pode ser descarregado somente quando nenhum dispositivo do sistema o esteja utilizando; Aplica-se o comando lsmod para verificar quais os módulos estão carregados e se estão sendo utilizados por algum hardware; -a remove todos os módulos não-utilizados; Este comando permite ao usuário obter mais informações sobre o módulo, tal como o nome de quem o criou, a licença sobre a qual ela está, os parametros suportados, entre outros; Exibe informações sobre um módulo a partir do seu arquivo_de_obejto; Alguns módulos não contém nenhuma informação, alguns têm uma pequena descrição de uma linha e outros possuem uma mensagem razoavelmente descirta; -a Exibe o autor do módulo; -d Exibe a descrição do módulo; -p Exibe os parâmetros com tipo definido que o módulo suporta; Neste arquivo é criado uma associação entre um dispositivo e um módulo; A esse tipo de associação é dado o nome de alias; Dentro deste arquivo um dispositivo pode estar associado somente a um módulo e um mesmo módulo pode ser associado a vários dispositivos; O arquivo também aceita outras estruturas, como o condicional para decidir quais módulos devem ser carregados em função do kernel; Exemplo do conteúdo do arquivo utilizando uma estrutura de decisão: Funcionando como um algoritmo a estrutura condicional é iniciada com a linha if , finaliza endif; Se a versão for igual ou superior a 2.4, ele carrega os modulos presentes entre if e endif. Podemos concluir que o Kernel de um sistema operacional representa a camada mais baixa de interface com o Hardware, sendo responsável por gerenciar os recursos do sistema computacional como um todo. Por esse motivo o kernel do Linux é atualizado constantemente, acrescentando suporte a novas tecnologias. Usa módulos para adicionar suporte ou para melhorar no suporte a itens já existentes. Os módulos são muito úteis, já que desobrigam o administrador da mudança do kernel inteiro, sendo necessário apenas a instalação do novo módulo. Disponível em: <http://pt.wikinourau.org/bin/view/GrupoLinux/SlideMo dulosDoKernel> . Acesso em: 18/02/2012 Disponível em: <http://gnulinuxbr.com/2009/11/18/modulos-do-kernel/>. Acesso em: 18/02/2012 Disponível em: <http://www.tecmundo.com.br/mac-osx/1636-o-que-e-kernel-.htm>. Acesso em: 19/02/2012 Disponível em: <http://pt.wikipedia.org/wiki/N%C3%BAcleo_(inform%C3 %A1tica)>. Acesso em: 20/02/2012 Disponível em: <http://www.infowester.com/historia_linux.php> . Acesso em: 20/02/2012 Disponível em: <http://joaotecnico.blogspot.com/2009/10/oque-e-um-kernel.html>. Acesso em: 21/02/2012