当你的linux内核程序出错时,你会采取什么方法?

当你的linux内核程序出错时,你会采取什么方法?,linux,linux-kernel,linux-device-driver,Linux,Linux Kernel,Linux Device Driver,我在编写和测试linux内核程序(如多个内核级线程或其他通用内核模块)时没有找到一个好方法,您会采取什么方法?提前谢谢 printk,printk和更多printk 使用dmesg查看。有时故意使内核崩溃以获取crashinfo,然后可以解码crashinfo dumptrace(),dumpstack()将在dmesg上打印stacktrace 最后一个选项是kgdb。但这需要连接到另一个系统,要让它正常工作总是一件痛苦的事情 一般的提示是避免内核编程,并将尽可能多的代码放在用户空间中。需要内

我在编写和测试linux内核程序(如多个内核级线程或其他通用内核模块)时没有找到一个好方法,您会采取什么方法?提前谢谢

printk,printk和更多printk

使用dmesg查看。有时故意使内核崩溃以获取crashinfo,然后可以解码crashinfo

dumptrace(),dumpstack()将在dmesg上打印stacktrace


最后一个选项是kgdb。但这需要连接到另一个系统,要让它正常工作总是一件痛苦的事情

一般的提示是避免内核编程,并将尽可能多的代码放在用户空间中。需要内核线程可能是一个设计错误。