Debugging live del kernel Linux, come è fatto e quali strumenti sono usati?

Quali sono i metodi e gli strumenti più comuni e meno comuni utilizzati per eseguire il debug live sul kernel Linux? So che Linus per es. è contro questo tipo di debug per il Kernel di Linux o è stato meno e quindi in quegli anni non è stato fatto molto, ma onestamente è passato molto tempo dal 2000 e sono interessato se quella mentalità è cambiata riguardo a Linux progetto e quali sono i metodi attuali utilizzati per eseguire il debug live sul kernel Linux al momento (sia locale che remoto)?

I riferimenti a procedure dettagliate e tutorial su tecniche e strumenti menzionati sono i benvenuti.