系统中有一个softirq_action结构,它定义在中,是一个通用结构,还有一个很重要的结构在中申明,这个结构是cpu相关的,比如在i386中这个结构为
|
在arm中这个结构为
|
以上两个结构均再中。
在中有几个很不好理解的函数:
|
下面是这个函数的定义
|
其中的smp_processor_id()如果追下去会很复杂,其实它最后只是一个数字:cpu的号码,单cpu中为0.
|
这个函数实际上是把irq_stat[cpu_id](kernel/softirq.c中)结构中的pending的第nr为置位,表示这个cpu有几号软中断要处理,在do_softirq()中有对irq_stat[]的pending的相应检查及处理,详细的处理过程参见源代码及《Linux Kernel Development》第7章。
| 操作系统栏目热点内容推荐 | |||
| 公告:天极网操作系统栏目需要大量原创稿件,稿费丰厚。投稿信箱:zhaobiao@chinabyte.com 火辣热点推荐:微软最新操作系统Windows Vista专区 最新专题推荐:Windows操作系统常见驱动故障解决方法 | |||
系统进程查询系统 |
Windows优化专区 |
||
Windows变慢原因及解决方法 |
|||
| 原野的个人信息:E-Mail Blog 天极群乐 制作的专题 | |||
| 火热主题社区推荐:Vista、Windows、Windows XP、系统优化、Linux | |||
| 软件频道精品推荐 | |||
|
|
|
|
|
![]() |
|
|