Pular para o conteúdo

Tornando o kernel do OpenBSD enxuto

Este artigo visa demonstrar o uso da ferramenta dmassage para tornar o kernel do OpenBSD o mais enxuto possível. Descobri a ferramenta dmassage enquanto lia o livro "Absolute Openbsd - Unix for the pratical paranoid", que eu recomendo para aqueles que querem entrar no mundo dos BSD's.
Giancarlo Rubio gianrubio
Hits: 19.633 Categoria: Linux Subcategoria: Kernel
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Introdução

Generic kernel

Generic, o kernel default do OpenBSD, é feito para funcionar (bootar) nas mais variadas plataformas e devices. Diferentemente da plataforma Linux, onde compilar o kernel uma espécie de ritual, o kernel generic é recomendado pelos desenvolvedores do OpenBSD, sendo até mesmo desaconselhado você compilar seu próprio kernel. Acontece que naqueles velhos hardwares 486 com míseros 64MB de memória, remover devices não usados do kernel ajuda a economizar memória, fato este que presenciei a uns dias atrás.

Dmassage

A instalação do dmassage é de extrema simplicidade, assim como todos os softwares que já estão portados para o OpenBSD. A solução ideal para instalação de pacotes no OpenBSD, recomendada pelos developers, é o pkg_add, já que segundo eles o uso do ports, por mais simples que seja, serve apenas como interface para a compilação de pacotes. Vamos começar instalado o dmassage:

# pkg_add -vvvi dmassage
parsing dmassage-0.6
Adding dmassage-0.6
extracting /usr/local/bin/dmassage
extracting /usr/local/man/man1/dmassage.1
/dev/wd0e: 383 bytes
/dev/wd0g: 12126 bytes

Dmassage instalado, temos agora que baixar o src do kernel, já que o OpenBSD não traz junto com ele na instalação.

# cd /usr/src/

Conectamos no ftp do OpenBSD. Usuário "anonymous" e sem senha:

# ftp ftp.openbsd.org

Pegamos o src:

ftp> get pub/OpenBSD/4.1/src.tar.gz

Assim que tivermos baixado podemos extraí-lo:

# tar -xvzf src.tar.gz

Já temos o src do kernel, agora precisamos usar o dmassage para verificar o que meu kernel necessita.

# cd sys/arch/i386/conf/
# dmassage -s GENERIC > new


Abra o arquivo new e veja que o dmassage colocou um comentário "#" na frente de todos os devices que não possuímos em nossa maquina, isso proporciona a nossa máquina o uso específico de devices e que em termos de hardware ajuda a economizar um pouco de memória.

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
   1. Introdução
   2. Compilando o kernel
   3. Instalado o kernel
Nenhum artigo encontrado.

Compilando kernel com suporte a POM (path-omatic) e Layer7 no Debian e Slackware

Slamd64: O Slackware para 64 bits

Mitigação - O que é e quando é "seguro" desabilitar

O kernel do Linux: A definição, importância e funcionalidades

Compilando o KERNEL sem medo do "kernel panic"

#1 Comentário enviado por cvs em 18/09/2007 - 12:32h
Ja havia ouvido falar desse dmassage há muito tempo, no site do João Salvatti(openbsd_pa), tem falando sobre ele.
Mas valeu pela iniciativa.
#2 Comentário enviado por cvs em 18/09/2007 - 12:34h
Em tempo gostaria de postar aqui um e-mail que foi passado para gente na lista openbsd_pa pelo Eduardo Alvarenga, aqui transcrevo:

"Voltando a parte técnica.

Não há ganho nenhum e usar o dmassage além da redução do tamanho da imagem /bsd.
O kernel do OpenBSD não usa mais ou menos recursos, ele usa apenas o
que consegue detectar.

Fiquem com o GENERIC."
#3 Comentário enviado por gianrubio em 18/09/2007 - 13:03h
Talvez tenha me expressado mal, mais a economia de memoria (e de tempo) que me refiro e em relacao ao boot. O artigo nao foi escrito para incrementar a perfomance, foi apenas uma solucao que encontrei para reduzir meu kernel. No inicio dele ja cito que os propios developers do openbsd nao recomendam compilar o kernel.

Segundo o faq do openbsd
http://cvs.openbsd.org/faq/faq5.html#Why

Em termos de perfomance o proprio faq do open ja e um bom começo
http://cvs.openbsd.org/faq/faq6.html#Tuning
http://cvs.openbsd.org/faq/faq14.html#DiskOpt
http://cvs.openbsd.org/faq/pf/perf.html

Removing device drivers may speed the boot process on your system, but can complicate recovery should you have a hardware problem, and is very often done wrong. Removing device drivers will not make your system run faster by any noticeable amount, though can produce a smaller kernel.

Contribuir com comentário

Entre na sua conta para comentar.