Chinaunix首页 | 论坛 | 博客
  • 博客访问: 166204
  • 博文数量: 47
  • 博客积分: 1032
  • 博客等级: 少尉
  • 技术积分: 759
  • 用 户 组: 普通用户
  • 注册时间: 2011-01-19 15:47
文章分类
文章存档

2012年(26)

2011年(21)

分类: LINUX

2011-08-15 16:04:23

struct irq_desc
2007年06月23日 星期六 11:01
linux-2.6.21.5/include/linux/irq.h

irq_desc[224]
|------------------------------------|
|                                    |
|                                    |
|                                    |
|                                    |
|                                    |
|       struct--irq_desc             |
|------------------------------------|
|irq_flow_handler_t    handle_irq    |handle_edge_irq()
|struct irq_chip       *chip         |
|void                  *handler_data |
|void                  *chip_data    |           struct--irqaction
|struct irqaction      *action       |--->|-----------------------------|
|unsigned int          status        |    |irq_handler_t         handler|
|unsigned int          depth         |    |unsigned long         flags
-|
|unsigned int          wake_depth    |    |cpumask_t             mask   |
|unsigned int          irq_count     |    |const char            *name
-|
|unsigned int          irqs_unhandled|    |void                  *dev_id|
|spinlock_t            lock          |    |struct irqaction      *next
-|
|cpumask_t             affinity      |    |int                   irq    |
|unsigned int          cpu           |    |struct proc_dir_entry *dir   |
|cpumask_t             pending_mask -|    |-----------------------------|
|struct proc_dir_entry *dir          |
|const char            *name         |
|------------------------------------|
|                                    |
|                                    |
|                                    |
|                                    |
|------------------------------------|




handle_irq
指向该中断请求的处理函数;
chip、handler_data
chip_data
用以访问发出中断请求的硬件;
action
指向响应该IRQ的动作链表中的第一项;
status
用以描述IRQ线的状态;
depth
wake_depth
指出该IRQ线上的中断嵌套深度;
irq_count
irqs_unhandled
指出该IRQ线上中断请求的数目和未处理的中断数目,如果最近10万个中断中仅处理了不超过100个,则内核会自动禁止来自该线的所有中断请求;
lock
为访问PIC的同步锁;
affinity
cpu
在多处理器上使用,用以实现负载均衡;
pending_mask
用以挂起被负载均衡的中断;
dir
指向/proc/irq目录项;
name
为/proc/interrupts输出项的目录。


阅读(1697) | 评论(0) | 转发(2) |
给主人留下些什么吧!~~