Depurador del kernel

Un depurador del kernel es un depurador presente en algunos kernels del sistema operativo para facilitar la depuración y el desarrollo del kernel por parte de los desarrolladores del kernel. Un depurador del núcleo puede ser un apéndice que implementa operaciones de bajo nivel, con un depurador completo como gdb, ejecutándose en otra máquina, enviando comandos al apéndice a través del puerto serie o una conexión de red, o puede proporcionar una línea de comandos que se puede utilizar directamente en la máquina que se está depurando.

Varios sistemas operativos y kernels de sistemas operativos que contienen un depurador de kernel:

  • La familia de Windows NT incluye un depurador de kernel llamado KD,[1]​ que puede actuar como un depurador local con capacidades limitadas (leer y escribir en la memoria del kernel, pero sin establecer puntos de interrupción)[2]​ y se puede conectar a una máquina remota a través del puerto serie, IEEE 1394, o mediante USB 2.0 o USB 3.0.[3]​ El depurador WinDbg también se puede utilizar para depurar kernels en máquinas locales y remotas.
  • BeOS y Haiku incluyen un depurador de kernel utilizable con una consola en pantalla o sobre el puerto serie. Cuenta con varios comandos para inspeccionar la memoria, los subprocesos y otras estructuras del kernel.[4]
  • DragonFly BSD
  • Linux:
En el Kernel de linux no se incluyó ningún depurador del kernel en el árbol de Linux de la línea principal antes de la versión 2.6.26-rc1 porque Linus Torvalds no quería un depurador del kernel.[9][10]

Referencias

  1. «KD». Archivado desde el original el 21 de enero de 2011. Consultado el 25 de enero de 2011. 
  2. «Performing Local Kernel Debugging». Consultado el 25 de enero de 2011. 
  3. «Windows Debugging». Consultado el 22 de mayo de 2013. 
  4. «Welcome to Kernel Debugging Land». 
  5. Nellitheertha, Hariprasad. «Inside the Linux kernel debugger». Archivado desde el original el 21 de junio de 2008. Consultado el 29 de mayo de 2008. 
  6. «LWN Weekly Kernel News». 7 de septiembre de 2008. 
  7. «MDB Github Website». 1 Jan 2016. Archivado desde el original el 22 de marzo de 2016. 
  8. «LWN Weekly Kernel News». 28 de junio de 2010. 
  9. «LWN.net». Consultado el 29 de mayo de 2008. 
  10. Torvalds, Linus (3 de mayo de 2008). «Linux 2.6.26-rc1». LWN. Consultado el 9 de marzo de 2015. 
  11. Singh, Amit (December 2003). «XNU: The Kernel». What is Mac OS X?. Archivado desde el original el 19 de abril de 2019. Consultado el 25 de mayo de 2012. «the built-in low-level kernel debugger, ddb, is part of XNU's Mach component, and so is kdp, a remote kernel debugging protocol implementation».