数字集成电路设计与系统应用专业 1 字符设备驱动高级开发字符设备驱动高级开发数字集成电路设计与系统应用专业?Linux内核中断子系统?中断处理程序编写?驱动程序上/下半部处理与延缓执行机制?内核定时器与延迟机制?内核地址空间与内存使用 2 数字集成电路设计与系统应用专业 3 Linux Linux内核中断子系统内核中断子系统?体系结构对中断支持?ARM处理器异常处理与中断系统?内核的中断系统结构?中断服务程序注册与编写?内核中查看中断cat /proc/interrupts 数字集成电路设计与系统应用专业中断分类?向量中断通产CPU为不同的中断分配中断号?非向量中断很多中断共享一个中断入口地址向量中断由硬件提供中断服务程序入口地址,非向量中断由软件提供中断服务程序入口地址数字集成电路设计与系统应用专业 5 中断处理中断处理?中断机制提供了硬件和软件之间异步传递信息的方式?硬件设备在发生某个事件时通过中断通知软件进行处理?中断实现了硬件设备按需获得处理器关注的机制,与查询方式相比可以大大节省CPU时间数字集成电路设计与系统应用专业 6 Linux Linux中断处理子系统中断处理子系统?根据中断号找到正确的中断处理代码?Linux 的irq_action指针指向中断函数处理向量表?该表由irqaction结构组成,包括一个中断处理程序的信息,如中断服务程序的地址,中断的标志flags 以及设备名和设备ID 等数字集成电路设计与系统应用专业 7 全局中断控制全局中断控制?全局中断控制包括启用和禁用中断?cli用来禁用所有的中断?sti用来取消中断禁用?驱动程序多数无需用禁用/启用全局中断的形式来处理竞态问题?尽量不要对全局中断进行操作??Linux内核中断子系统?中断处理程序编写?驱动程序上/下半部处理与延缓执行机制?内核定时器与延迟机制?内核地址空间与内存使用 8 数字集成电路设计与系统应用专业 9 中断处理程序编写中断处理程序编写?注册中断处理程序?Linux中断处理子系统原理?中断处理程序的实现数字集成电路设计与系统应用专业 10 申请申请IRQ IRQ ?中断处理程序注册的两个功能:注册中断号和注册中断处理函数?intrequest_irq(unsigned intirq, void (*handler)(intirq, void *dev_id, structpt_regs *regs), unsigned long irqflags, const char * devname, void *dev_id); ?驱动程序可以选择在初始化的时候安装中断处理程序,也可以在用户打开设备时再安装
9-字符设备驱动高级开发. 来自淘豆网m.daumloan.com转载请标明出处.