【嵌入式Linux学习七步曲之第五篇 Linux内核及驱动编程】深入剖析Linux中断机制之目录

 

 

深入剖析Linux中断机制

Sailor_forever  [email protected] 转载请注明

http://blog.csdn.net/sailor_8318/archive/2008/07/09/2627136.aspx

 

【摘要】本文详解了Linux内核的中断实现机制。首先介绍了中断的一些基本概念,然后分析了面向对象的Linux中断的组织形式、三种主要数据结构及其之间的关系。随后介绍了Linux处理异常和中断的基本流程,在此基础上分析了中断处理的详细流程,包括保存现场、中断处理、中断退出时的软中断执行及中断返回时的进程切换等问题。最后介绍了中断相关的API,包括中断注册和释放、中断关闭和使能、如何编写中断ISR、共享中断、中断上下文中断状态等。

【关键字】中断,异常,hw_interrupt_typeirq_desc_tirqactionasm_do_IRQ,软中断,进程切换,中断注册释放request_irqfree_irq,共享中断,可重入,中断上下文

 

 

目录

 

1      中断概述... 2

1.1       为什么需要中断?... 2

1.2       中断的表示形式... 2

1.3       异常... 2

1.4       中断处理程序... 3

2      Linux中断的组织形式... 4

2.1       IRQ描述符irq_desc. 4

2.2       中断控制器描述符irq_chip. 5

2.3       中断服务例程描述符irqaction. 8

2.4       三者的关系... 9

3      Linux对异常和中断的处理... 10

3.1       异常处理... 10

3.2       中断处理... 10

3.3       中断处理程序的执行流程... 11

3.3.1        流程概述... 11

3.3.2        保存现场... 13

3.3.3        中断处理... 14

3.3.4        从中断返回... 19

4      中断API 21

4.1       中断服务例程的挂接... 21

4.2       中断卸载free_irq. 25

4.3       中断控制... 27

4.3.1        禁止和激活本地全局中断... 27

4.3.2        禁止指定中断线... 28

4.4       编写中断处理程序... 29

4.5       重入和中断处理程序... 29

4.6       共享的中断处理程序... 30

4.7       中断上下文... 30

4.8       中断系统的状态... 31

4.9       中断状态/proc/interrupts. 32

 

你可能感兴趣的:(嵌入式Linux)