摘要: 我们使用中断的目的,就是为了在中断发生时,才去读操作,避免像查询一样一直read,从而占据大量的CPU。 一、阻塞: 当进程在读取外部设备的资源(数据),资源没有准备好,进程就会休眠。 linux应用中,大部分的函数接口都是阻塞 scanf(); read(); write(); accept(); 阅读全文
posted @ 2020-02-29 23:41 朱果果 阅读(485) 评论(0) 推荐(0) 编辑
摘要: 目录: 1、中断号 2、获取中断号 3、实现中断处理 4、中断编程—实现字符设备驱动框架 5、驱动实现将硬件数据传递给数据 6、示例 1、中断号 中断号是系统分配给每个中断源的代号,以便识别和处理。在采用向量中断方式的中断系统中,CPU必须通过它才可以找到中断服务程序的入口地址,实现程序的转移。 在 阅读全文
posted @ 2020-02-29 18:47 朱果果 阅读(3167) 评论(0) 推荐(0) 编辑
摘要: 实现按键驱动,板上加载驱动出错,Oops信息如下: 可知,是因为使用了空指针,导致内核访问了非法地址,在源码中去看一下: 1 ... 2 //按键中断的处理函数 3 irqreturn_t key_irq_handler(int irqno, void *devid) 4 { 5 printk(" 阅读全文
posted @ 2020-02-29 18:08 朱果果 阅读(559) 评论(0) 推荐(0) 编辑