如何调试插入的内核模块?

use*_*539 5 debugging kernel kernel-modules

我想调试我没有源代码的已加载内核模块;我怀疑是病毒。有没有办法将其输入 GDB 进行分析?

Sen*_*Sen 5

从调试的角度来看,内核是一个特殊的“进程”,与用户空间进程不同,用户空间进程通过某种 rpc 机制(系统调用)或映射内存与内核通信。

我认为您无法通过检查一些随机用户进程来查看内核的数据结构。

另一个问题是,每个用户空间进程(包括调试器)都需要内核来运行和与用户通信;我认为您不能只是停止内核并相信调试器会继续运行。

所以你需要在第二台机器上运行 GDB,这就是所谓的内核调试。有关更多详细信息,
请参阅(http://kgdb.linsyssoft.com/ , Documentation/sh/kgdb)。