Depuração do kernel

4

Eu gostaria de estudar o fluxo de alguns drivers de dispositivos Linux e um fluxo mínimo de kernel (threading cum context switching e interrupção de gerenciamento).

Como posso depurar o kernel do linux? Quais são os passos básicos para fazer isso?

Recentemente eu compilei e integrei o novo kernel (2.6.34.7) em minha máquina rodando o kernel 2.6.29.

    
por Renjith G 16.10.2010 / 20:25

3 respostas

3

Depende do que você realmente precisa. A função printk() provavelmente simples será OK para o começo. Há também a interface /proc que você pode usar para obter informações úteis do kernel.

Se você precisar de algo mais complicado, use o KGDB (depurador de kernel).

    
por 16.10.2010 / 22:47
0

Vá para a sua pasta de fontes do kernel e dê uma olhada na pasta Documentation/ . Comece com o arquivo kernel-parameters.txt procurando referências à depuração.

Se o seu kernel é compilado com a opção CONFIG_DEBUG_KERNEL , você pode facilmente ajustar a verbosidade das mensagens do kernel através da opção loglevel boot.

    
por 29.07.2011 / 15:54
0

As outras opções, além do KGDB, estariam depurando o kernel usando o QEMU e o GDB. Ao contrário do KGDB, a combinação QEMU-GDB requer apenas uma única máquina.

    
por 15.01.2013 / 13:02