Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2864510
  • 博文数量: 523
  • 博客积分: 11908
  • 博客等级: 上将
  • 技术积分: 5475
  • 用 户 组: 普通用户
  • 注册时间: 2009-04-03 15:50
文章分类

全部博文(523)

文章存档

2019年(3)

2013年(4)

2012年(71)

2011年(78)

2010年(57)

2009年(310)

分类: LINUX

2009-07-12 01:46:44

深入剖析Linux中断机制
Sailor_forever  转载请注明

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

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/sailor_8318/archive/2008/08/28/2840999.aspx
阅读(1043) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~