我正在做一项作业,我必须为键盘编写和中断处理程序。因此,在此分配中,我们必须记录按键,以便可以执行文件I / O,并且为此使用了工作队列。
我知道它不允许在中断处理程序中休眠,因此我们不能在中断处理程序中使用任何文件I / O或printk。
因此,在实际行业中,如何调试和中断处理程序,或者如果我想调试某些东西怎么办?
最佳答案
是!这是正确的,我们不能在printk
中使用ISR
。正如我在中断处理期间在RTOS
(实时操作系统)中研究的那样,它创建消息日志并将所需的信息保存在日志文件中,您可以稍后查看。
类似的东西也可用于最新的内核。使用trace_printk
可以调试时间紧迫的地方。我以前没有用过,所以没有样品。您可以按照此link来了解有关trace_printk
的更多信息。