Come eseguire il debug di un driver di dispositivo Linux

September 4

Il debugging è il processo di scoperta perché un programma si blocca in modo che possa essere risolto. Il creatore di un programma è normalmente la persona che esegue il debug di esso. Tuttavia, su Linux è del tutto possibile per eseguire il debug di un programma e di inviare le informazioni allo sviluppatore sul bug si verifica in modo che possano risolvere il problema. Il debugging è più di un semplice affermando che il programma si blocca; un programma speciale chiamato un debugger in grado di fornire utili suggerimenti su cosa esattamente si blocca parte del programma. Un driver di periferica Linux, o modulo del kernel, è possibile eseguire il debug come qualsiasi altro programma che utilizza GNU Debugger (GDB).

istruzione

1 Aprire una finestra di terminale.

2 Digitare il seguente comando, quindi premere "Invio" per eseguire GDB sul modulo del kernel:

gdb / lib / modules / yourversion / kernel / ModulePath

Sostituire "yourversion" con la versione di Linux in esecuzione sul sistema, e "ModulePath" con la directory contenente il driver di periferica.

3 Digitare "run" per avviare il modulo nel debugger.

4 Fare clic e trascinare il mouse sopra l'elenco visualizzato dal GDB quando il programma rileva un errore, quindi premere i tasti "C" "Ctrl" e per copiarli. GDB è la visualizzazione di un elenco delle specifiche linee di codice che causano il problema. Se sei l'autore del modulo del kernel, è possibile utilizzare queste informazioni per correggere il problema. In caso contrario, è possibile inviare queste righe l'autore insieme a una nota utile che descrive il problema si verifica.

5 Tipo "quit" e premere il tasto "Enter" per uscire GDB.