Maison  >  Article  >  développement back-end  >  Comment déboguer le noyau en C/C++ ?

Comment déboguer le noyau en C/C++ ?

王林
王林avant
2023-09-14 21:33:02951parcourir

Comment déboguer le noyau en C/C++ ?

Lorsqu'un processus est interrompu par le système d'exploitation en raison d'une erreur de programme, le processus vide le noyau. La raison la plus courante pour laquelle cela se produit est que le programme accède à une valeur de pointeur non valide, telle que NULL ou une valeur en dehors de sa zone mémoire. Dans le cadre de ce processus, le système d'exploitation tente d'écrire nos informations dans un fichier afin que nous puissions analyser ce qui s'est passé.

Ce noyau peut être utilisé pour diagnostiquer et déboguer nos programmes comme suit -

Par défaut, le noyau est vidé dans le répertoire /proc/sys/kernel. Pour déboguer le noyau, le programme doit être compilé avec l'option -g. Une fois que vous avez le noyau, exécutez gdb -

$ gdb  nameOfExecutable core

Cela ouvrira le noyau dans gdb et vous pourrez maintenant continuer le débogage. Si vous ne savez pas comment utiliser gdb, vous pouvez utiliser ce lien pour en savoir plus : https://www.ibm.com/developerworks/library/l-gdb/

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer