Receita: 
Aprenda a cozinhar seu bolo de Kernel 
David Jourdain
MMaanniippuullaaççããoo ddee KKeerrnneell LLiinnuuxx 
- Pré requisitos para manipulação de uma Kernel Linux 
- Linux pré-in...
LLiinnuuxx SSoouurrccee 
Podemos utilizar um “Linux Source” de qualquer origem, desde que o “source” 
possua os módulos qu...
LLIIBBNNCCUURRSSEESS55--DDEEVV 
Conjunto de bibliotecas de funções da família ncurses (new curses), que 
gerenciam program...
MMAAKKEE 
O objetivo do utilitário MAKE é determinar automaticamente quais partes de um 
grande programa precisam ser reco...
GGCCCC 
O GCC é o compilador padrão para C, C++, Objective-C, Objective-C++, Ada, 
Fortran 95, e Java em todas as arquitet...
KKEERRNNEELL--PPAACCKKAAGGEE 
Um pacote Debian de utilitários para construir uma Kernel Linux. Possui arquivos 
“.config” ...
BBUUIILLDD--EESSSSEENNTTIIAALL 
Referencia todos os pacotes essenciais para efetuar a 
construção/manipulação/edição de pa...
IINNIITTRRAAMMFFSS--TTOOOOLLSS 
Pacote de scripts que facilita a criação de arquivos initrd.
MMaanniippuullaaççããoo ddee KKeerrnneell 
# make menuconfig 
Comando utilizado para abrir o editor gráfico da Kernel.
Compilar KKeerrnneell ee ggeerraarr PPaaccoottee 
Após todo o processo de edição, podemos executar o comando abaixo, para ...
AArrqquuiivvoo iinniittrrdd 
O arquivo initrd é um bloco de dispositivos somente de leitura. Também é uma 
memória RAM vir...
IInnssttaallaaççããoo ddaa KKeerrnneell 
Com os arquivos gerados, podemos instalar a imagem da kernel e os cabeçalhos, 
com...
MMaappaa ddaa KKeerrnneell LLiinnuuxx
Mas... Eu também gostaria ddee ffaallaarr ssoobbrree 
oouuttrroo aassssuunnttoo:: 
SSoobbrree aa SSUUAA ffoorrmmaaççããoo!!
Obrigado pela atenção! 
PERGUNTAS? 
David Jourdain
Próximos SlideShares
Carregando em…5
×

Palestra 2º Café com Software Livre - David Jourdain - Receita: Aprenda a cozinhar seu bolo de Kernel

249 visualizações

Publicada em

Palestra 2º Café com Software Livre - David Jourdain - Receita: Aprenda a cozinhar seu bolo de Kernel

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
249
No SlideShare
0
A partir de incorporações
0
Número de incorporações
3
Ações
Compartilhamentos
0
Downloads
3
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Palestra 2º Café com Software Livre - David Jourdain - Receita: Aprenda a cozinhar seu bolo de Kernel

  1. 1. Receita: Aprenda a cozinhar seu bolo de Kernel David Jourdain
  2. 2. MMaanniippuullaaççããoo ddee KKeerrnneell LLiinnuuxx - Pré requisitos para manipulação de uma Kernel Linux - Linux pré-instalado (No exemplo, um Debian-like) - Arquivo fonte da Kernel (linux source) - libncurses5-dev; make; gcc - kernel-package; build-essential; initramfs-tools - Manipulação da Kernel (make menuconfig) - Compilação e empacotamento - Instalação da Kernel - Mapa da Kernel Linux
  3. 3. LLiinnuuxx SSoouurrccee Podemos utilizar um “Linux Source” de qualquer origem, desde que o “source” possua os módulos que sejam compatíveis com o ambiente em uso. Exemplo: - Ambiente Debian-Like - Podemos usar “Linux Source” da kernel.org - Podemos usar “Linux Source” do ubuntu - Podemos usar “Linux Source” do debian - Entre outras fontes... (procure fontes confiáveis!!)
  4. 4. LLIIBBNNCCUURRSSEESS55--DDEEVV Conjunto de bibliotecas de funções da família ncurses (new curses), que gerenciam programas, extensões, lib's e manuais para programação, sob GNU/GPL. Oferece um método independente para atualizar caracteres na tela.
  5. 5. MMAAKKEE O objetivo do utilitário MAKE é determinar automaticamente quais partes de um grande programa precisam ser recompiladas e executar os comandos para recompilá-los. O MAKE pode ser utilizado com qualquer linguagem de programação, cujo compilador possa ser executado com um comando. O MAKE pode ser usado para descrever qualquer tarefa em que alguns arquivos possam ser atualizados automaticamente com os outros, sempre que os outros mudarem. Para usar o MAKE, é necessário escrever um arquivo chamado "makefile", que descreve as relações entre os arquivos em seu programa, e o estado dos comandos para atualizar cada arquivo.
  6. 6. GGCCCC O GCC é o compilador padrão para C, C++, Objective-C, Objective-C++, Ada, Fortran 95, e Java em todas as arquiteturas. O pacote do GCC também provê libgcc1, libgcc2 (m68k) e libgcc4 (hppa) que contêm as GCC intrinsics e libstdc+ +6.
  7. 7. KKEERRNNEELL--PPAACCKKAAGGEE Um pacote Debian de utilitários para construir uma Kernel Linux. Possui arquivos “.config” pré-configurados para diversas arquiteturas. O comando para compilação e empacotamento “make-kpkg” está dentro deste pacote.
  8. 8. BBUUIILLDD--EESSSSEENNTTIIAALL Referencia todos os pacotes essenciais para efetuar a construção/manipulação/edição de pacotes para Debian's-Like.
  9. 9. IINNIITTRRAAMMFFSS--TTOOOOLLSS Pacote de scripts que facilita a criação de arquivos initrd.
  10. 10. MMaanniippuullaaççããoo ddee KKeerrnneell # make menuconfig Comando utilizado para abrir o editor gráfico da Kernel.
  11. 11. Compilar KKeerrnneell ee ggeerraarr PPaaccoottee Após todo o processo de edição, podemos executar o comando abaixo, para compilar e gerar pacotes de instalação do “fonte” editado (linux-source), da “imagem” (linux-image) da Kernel e dos “cabeçalhos” (linux-headers) de interação com a Kernel. # make-kpkg kernel_image kernel_source kernel_headers
  12. 12. AArrqquuiivvoo iinniittrrdd O arquivo initrd é um bloco de dispositivos somente de leitura. Também é uma memória RAM virtual que é inicializada pelo gerenciador de boot (grub ou lilo) antes que a kernel seja inicializada. A kernel então pode usar o conteúdo do initrd para iniciar o sistema em duas etapas. Na primeira etapa da inicialização, a kernel inicia-se e monta um sistema de arquivos raiz inicial, a partir do conteúdo do initrd. Na segunda etapa, os drivers adicionais e outros módulos são carregados. Depois de carregar os módulos adicionais, um novo sistema de arquivos root é disponibilizado.
  13. 13. IInnssttaallaaççããoo ddaa KKeerrnneell Com os arquivos gerados, podemos instalar a imagem da kernel e os cabeçalhos, com o seguinte comando: # dpkg -i kernel*.deb Criar o arquivo initrd (caso não seja criado na compilação) # mkinitramfs -o /boot/initrd.img-3.XX.XX /lib/modules/3.XX.XX Atualizar o gerenciador de boot (no caso, o grub) # update-grub
  14. 14. MMaappaa ddaa KKeerrnneell LLiinnuuxx
  15. 15. Mas... Eu também gostaria ddee ffaallaarr ssoobbrree oouuttrroo aassssuunnttoo:: SSoobbrree aa SSUUAA ffoorrmmaaççããoo!!
  16. 16. Obrigado pela atenção! PERGUNTAS? David Jourdain

×