我正在做一项作业,我必须为键盘编写和中断处理程序。因此,在此作业中,我们必须记录击键,以便允许执行文件 I/O,并且我们为此使用工作队列。
我知道中断处理程序中不允许休眠,因此我们不能在中断处理程序中使用任何文件 i/o 或 printk。
那么在实际行业中如何调试和中断处理程序或者如果我想调试某些东西我可以做什么?
最佳答案
是的!这是正确的,我们不能在 ISR
中使用 printk
。正如我在 RTOS(实时操作系统)中研究的那样,在中断处理过程中,它会创建消息日志并将所需信息保存在日志文件中,您稍后可以看到。
类似的东西也适用于最新的内核。使用 trace_printk
您可以调试时间关键的地方。我以前没有使用过这个,所以没有这方面的示例。您可以关注这个link了解有关 trace_printk
的更多信息。
关于linux-kernel - 如何调试中断处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20082098/