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.

[ Hits: 18.135 ]

Por: Giancarlo Rubio em 18/09/2007


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.

    Próxima página

Páginas do artigo
   1. Introdução
   2. Compilando o kernel
   3. Instalado o kernel
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Compilação do kernel v3.x no CentOS e Debian

Compilação de Kernel

Aventuras e desventuras com o kernel 2.6

Slackware 10.2 com dois kernels na mesma instalação

Compilando o kernel no Conectiva Linux 10

  
Comentários
[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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts