2010-08-17 10 views

Respuesta

9

LFS. Luego instale cada depurador y generador de perfiles que pueda encontrar.

+0

puedo usar todos esos y que son cool, pero se necesita mucho tiempo para remendar, pruebas, etc. – user361697

+0

también tener una mira Buildroot, que automatiza todo: https://stackoverflow.com/a/44625382/895245 –

7

He disfrutado usando Gentoo para juguetear con el kernel.

+0

Otro voto para Gentoo. –

8

He escuchado Linus himself uses Fedora. Recomendaría Gentoo, que permite (pretende) que personalices a mano tu núcleo, es la configuración perfecta para él (y he pasado muchas horas exprimiendo hasta el último pedazo de rendimiento por el gusto de hacerlo).

Naturalmente, Ubuntu es mi distribución preferida, pero puede tener problemas si comienza a secuestrar y eliminar las funciones esperadas del kernel. Gentoo no se quejará, y no espera que comiencen por ahí.

+0

El kernel de Ubuntu lleva una cantidad justa de parches para cosas como el manejo de UUID y otra magia similar. Puedo ejecutar núcleos de vainilla en mi caja de gentoo todo el tiempo sin problemas. – stsquad

+0

Fedora es también mi favorita, malditamente estable. –

2

La distribución probablemente no haga mucha diferencia ya que trabajará en su núcleo y no en el kernel de "fregadero de cocina" que las distros tienden a proporcionar con un montón de parches en la mayoría de los casos.

Si está haciendo un trabajo de desarrollo del kernel, entonces supongo que quiere una distribución que se inicie rápidamente, algo como el cachorro podría ser ideal aquí y hacer su codificación real de algo como Ubuntu.

3

La distribución realmente no importa. Es lo que quiere hacer con el núcleo y hacer su función de desarrollo/prueba.

Aquí hay algunas cosas que hacer.

a. Active la depuración del kernel y las opciones de registro. Esos definitivamente te ayudarían en la depuración. ver useful linux kernel debug options to turn on

b. Herramienta de Getdebuggers como Valgrind que verifica la pérdida de memoria. Consulte doc como https://www.kernel.org/doc/Documentation/kmemleak.txt

c. Encontré un buen editor para editar. No quiero comenzar una guerra vim vs emacs. En realidad, es una preferencia personal, solo asegúrate de seguir las pautas de estilo de codificación del kernel de Linux. https://www.kernel.org/doc/Documentation/CodingStyle

d. Familiarícese con los sistemas de registro y el sistema de proceso, ya que proporcionan información valiosa.

e. Lea la documentación en la documentación Muy buen punto directorio/usr/src/linux/de partida para comprender el núcleo

0

Buildroot

Buildroot es un conjunto de secuencias de comandos que genera pequeñas distribuciones con rootfs imágenes más pequeñas que 10MiB.

Descarga todo de la fuente y lo compila, por lo que es trivial parchear paquetes.

Las imágenes generadas son tan pequeñas que es posible comprender toda la configuración del usuario, lo que hará que sea más fácil enfocarse en el kernel.

Ventaja sobre LFS: todo está completamente automatizado. Debido a esto, Buildroot se usa profesionalmente en organizaciones grandes.

He creado esta configuración para automatizar cosas tanto como sea posible: https://github.com/cirosantilli/linux-kernel-module-cheat

Cuestiones relacionadas