在多处理器系统中调度中断的方法及设备的制作方法

文档序号:6387260阅读:200来源:国知局
专利名称:在多处理器系统中调度中断的方法及设备的制作方法
技术领域
本公开主要涉及多处理器系统,特别是,涉及在多处理器系统中调度中断的方法及设备。
背景技术
在处理器系统中,中断是这样一种事件,该事件可以由连接到该处理器系统的输入/输出(I/O)设备触发,或是由在该处理器系统内部的程序触发,该程序引起主程序控制处理器系统(即,操作系统(OS))的操作,来停止当前的任务并执行一些其它的任务。当网络设备检测到一个输入信息包时,该网络设备可以发送一个中断给处理器。响应该中断,处理器启动中断例程。例如,视频解码器响应于检测到视频信息包流中的错误,会发送一个中断给处理器,以请求来自该处理器的出错处理服务。
典型地,中断控制器为中断赋予优先级,并将中断存储在队列中等待处理。在采用多线程内核、多内核处理器、多任务内核、和/或虚拟化内核(即,虚拟多处理器系统)的现行处理器系统中,中断可以被调度或路由到目标处理器,该目标处理器正在执行优先级任务和/或是应用程序,并且从而可能引起整个多处理器系统低效率地运行。采用固定重定向方案或是简单判优方案如循环法方案,通过处理资源以执行任务和/或应用程序,中断经常导致次优化的性能。


图1是依照本发明的教导而配置的示例中断调度系统的框图表示。
图2是可以被用来实现图1的示例中断调度系统的示例多处理器可编程中断控制器(MPIC)的框图表示。
图3是可以执行以实现图1的示例中断调度系统的示例可机读指令的流程图表示。
图4是可以被用来实现图2的示例MPIC的示例处理器系统的框图表示。
具体实施例方式
虽然以下公开了示例系统包括特别是组件、以硬件执行的软件或固件,应该注意的是,这些系统仅仅是说明性的并且不应该看作是限制。例如,可以设想,任何或所有的所公开的硬件、软件、和/或固件组件可以唯一地体现为硬件,唯一地体现为软件,唯一地体现为固件或是一些硬件、软件和/或固件的组合。
在图1的示例中,所说明的中断调度系统100包括多个处理器110,通常分别表示为处理器#1至N 120、130,和140。多个处理器110中的每一个都包括本地可编程中断控制器(LPIC),通常表示为122、132,以及142。LPIC 122,132,以及142中的每一个都包括处理器间中断寄存器(IPIR),通常表示为124,134,以及144,以及中断控制寄存器(ICR),通常表示为126,136,以及146。LPIC 122,132,以及142处理待解决的中断、屏蔽、优先化,以及向量产生,如同本领域的普通技术人员会容易认识到的那样。特别是,LPIC 122,132,以及142(例如,分别通过ICR 126,136,以及146)接收并处理处理器间中断(IPI)消息,以便用于多个处理器110的内核执行。LPIC 122,132,以及142(例如,分别通过IPIR 124,134,和144)也生成IPI消息,以允许多个处理器110能彼此进行通信。
所说明的中断调度系统100还包括系统总线150,以及多处理器可编程中断控制器(MPIC)160。如这里所述的,MPIC 160对中断赋予优先级,平衡中断负载,和/或生成IPI消息给系统总线桥180。通常,MPIC 160从输入/输出(I/O)设备接收基于引脚的和/或基于信号的中断,通常表示为170和175,例如鼠标,键盘,显示器,打印机,磁盘驱动器,和/或任何其它的外围设备。为发送基于引脚的中断,I/O设备170通过一组中断输入引脚172而直接耦合到MPIC 160。中断输入引脚172中的每一个都相应于特定的中断类型(例如,读中断或是写中断)。例如,当打印机完成一个打印作业时,该打印机会生成一个中断给MPIC 160。在另外一个例子中,当磁盘驱动器完成对磁盘的读取和/或写操作时,该磁盘驱动器会生成一个中断给MPIC 160。基于中断的类型,I/O设备170会通过该组中断输入引脚172中的一个而发送中断给MPIC 160。依照系统总线协议,系统总线桥180启动在多个处理器110和MPIC 160之间的通过系统总线150的中断消息传递。即,系统总线桥180使得处理器间中断(IPI)消息可以发送到多个处理器110,这样中断就能由MPIC 160调度并由多个处理器110处理。因此,通过依照这里所述的中断负载平衡策略而生成IPI消息给系统总线桥180,MPIC 160能将中断调度给多个处理器中的至少一个(即,目标处理器)。为了实现中断负载平衡策略,MPIC 160从多个处理器110中识别出目标处理器,以便基于一个或多个中断负载平衡参数,例如多个处理器110的时间(例如,中断服务期限等级)、历史(中断负载历史等级)、以及可用性(例如,中断可用性等级)来调度中断。
为了发送基于信号的中断给MPIC 160,I/O设备175通过系统总线桥180和I/O总线190而连接到MPIC 160。与通过该组中断输入引脚172的其中一个而发送中断给MPIC 160相反,I/O设备175通过I/O总线190发送中断消息给系统总线桥180。本领域的普通技术人员能容易理解,中断消息指示由I/O设备175请求的中断类型(例如,读中断或写中断)。从而,MPIC 160生成相应于来自I/O设备175的中断消息的IPI消息,并基于中断负载平衡策略通过IPI消息而将中断调度到目标处理器。
虽然以上的由图1的中断调度系统100所调度的中断描述为硬件中断(例如,来自打印机的中断),中断也可以为软件中断(例如,来自文字处理应用程序的中断)。在一个特殊的例子中,当应用程序结束和/或请求来自操作系统(OS)(未示出)的指令时,会出现软件中断。
在图2的例子中,所说明的MPIC 160包括中断负载平衡策略寄存器(ILBPR)210,多个目标处理器控制寄存器(TPCR)212,加权平均值生成器(WAG)250,以及目标处理器选择器(TPS)270。ILBPR 210包括对于一个或多个中断负载平衡参数的权重,其中的参数例如处理器中断服务期限(PISA),处理器中断负载历史(PILH),以及处理器中断可用性(PIA),来实现中断负载平衡策略。PISA参数指示了中断已经排队等候多个处理器110的时间(即,中断在被多个处理器110的每一个处理之前,等待了多长时间)。PILH参数指示了调度到多个处理器110的中断的历史(即,中断被调度到多个处理器110中的每一个以执行其它任务的频率)。PIA参数指示了多个处理器110对于接收来自MPIC 160的中断的意愿(即,多个处理器110中的每一个的繁忙程度)。
每一个中断负载平衡参数都被赋予一个相对的权重,以指示在中断负载平衡策略中该特定参数的相关重要性/影响。例如,ILBPR 210可以包括PISA权重214,PILH权重216,以及PIA权重218。如果中断负载平衡参数对中断负载平衡策略来说同样地重要,则每一个中断负载平衡参数都被赋予一个相同的权重。但是,如果特定的中断负载平衡参数比其它的参数相对来说要更重要的话,那么该特定的中断负载平衡参数就可以关联一个更大的权重。为了说明相对的权重被赋予每一个中断负载平衡参数的一种方式,PISA权重214可以为2的相对权重,并且PILH权重216也可以为2的相对权重,但是PIA权重218可以为1的相对权重。在这个中断负载平衡策略例子中,PISA参数和PILH参数同样重要,因为PISA权重214和PILH权重216有着相同的权重2。另外,在本例中,PISA参数和PILH参数相对来说比PIA参数更重要,因为PISA权重214和PILH权重216都有着对于PIA权重218来说两倍的相对权重。
PISA权重214,PILH权重216,以及PIA权重218可以改变以支持其它中断负载平衡方案。为实现循环方案,例如,PISA权重214以及PIA权重218可以被设置成最低等级(例如,零),以使中断负载平衡策略只是单独地基于PILH参数(即,PILH权重216比PISA权重214和PIA权重218发更大)。因此,MPIC 160可以按照从处理器#1120到处理器#N 140的连续顺序来简单地调度中断,并接着重复该顺序。
虽然是在一个特定的范围之内说明了中断负载平衡参数的权重,但是中断负载平衡参数的权重可以由任何其它合适的范围来实现,以指示在中断负载平衡策略下每一个中断负载平衡参数相对于其它参数的重要性。
如上所述,MPIC 160还包括多个TPCR 212,通常表示为TPCR#1220,TPCR#2230,以及TPCR#N 240,它们包括与多个处理器110关联的中断调度信息。多个TPCR 212中的每一个都相应于示例中断调度系统100的多个处理器110的其中之一。例如,TPCR#1220相应于处理器#1120,TPCR#2230相应于处理器#2130,以及TPCR#N240相应于处理器#N 140。多个TPCR 212中的每一个都包括与它的相应处理器相关的中断调度信息。在每一个TPCR 212中,中断调度信息识别出一个特定的处理器,并且指示在ILBPR 210的中断负载平衡参数每一个中的该特定处理器的等级。特别是,多个TPCR 212中的每一个都包括处理器识别符(PID),PISA等级,PILH等级,以及PIA等级。例如,TPCR#1220包括与处理器#1120关联的PID 222,PISA等级224,PILH等级226,以及PIA等级228。PID 222可以是相应于处理器#1120的标识号码。PISA等级224指示出处理器#1120在处理中断上所花销的时间。PILH等级226指示了调度到处理器#1120的中断的历史(即,已经有多少中断调度到处理器#1120)。PIA等级228指示了处理器#1120执行来自MPIC 160的中断的可用性(即,处理器#1120的繁忙程度)。例如,中断调度系统100可以将重要的任务交给处理器#1120执行,并且降低PIA等级228以减少处理器#1120接受来自MPIC 160的中断的意愿。可替换地,中断调度系统100可以简单地将PIA等级228设置到最低的等级(例如,零),以使处理器#1120总是不可用于接收来自MPIC 160的中断。因此,处理器#1120可以专心于执行先前由中断调度系统100分配的重要任务。通过与TPCR#1220类似的方式,TPCR#2230包括与处理器#2130相关联的PID 232,PISA等级234,PILH等级236,以及PIA等级238,并且TPCR#N 240包括与处理器#N 140关联的PID 242,PISA等级244,PILH等级246,以及PIA等级248。
为了识别多个处理器110中的一个作为用来处理中断的目标处理器,WAG250为多个处理器110中的每一个确定中断加权平均值(IWA)260,通常表示为IWA#1262,IWA#2264,以及IWA#N 266。基于中断负载平衡参数214、216、218的权重,以及存储在多个TPCR 212中的中断调度信息,WAG 250计算IWA 260。WAG 250可以使用不同的方法来评估ILBPR 210和TPCR 212。例如,这些方法可以包括对多个处理器110的每一个进行IWA的全比特范围计算,以选择负载最小的处理器,以及包括基于中断调度信息的三个等级之一的比较。WAG 250分别根据PISA权重214、PILH权重216、及PIA权重218,通过加权(例如,乘以)处理器#1120的PISA等级224、PILH等级226、以及PIA等级228而计算IWA#1262。即,WAG 250将PISA等级224乘以PISA权重214,将PILH 226乘以PILH权重216,以及将PIA等级228乘以PIA权重218,然后把最后得到的乘积相加以生成IWA#1262。类似地,WAG 250分别根据PISA权重214、PILH权重216、及PIA权重218,通过加权处理器#2130的PISA等级234、PILH等级236、以及PIA等级238而计算IWA#2264。通过类似的方式,WAG 250通过处理器#N 14的PISA等级244、PILH等级246、以及PIA等级248而计算IWA#N 266。
在由WAG 250计算IWA 260的基础上,TPS 270比较多个处理器110的IWA260,以选择多个处理器110中的一个作为目标处理器,用于接收/服务下一个中断。例如,TPS 270可以识别与最高IWA关联的处理器作为目标处理器。在这样的情况下,MPIC 160通过生成一个IPI消息给目标处理器的目标处理器识别符(TPID)262,来将中断调度到目标处理器。
虽然图2所示的PISA,PILH,以及PIA参数都特别适合于用来实现中断调度系统100,但是本领域的普通技术人员会容易地认识到可以使用其它合适的中断负载平衡参数。进一步,可以使这里所述的其中一个或多个中断负载平衡参数禁用,以识别目标处理器。为了实现时间循环方案(例如,将中断调度到多个处理器110中的每一个,而不管任何其它原因),例如,中断调度系统100可以将PISA权重214和PIA权重218设置到最低等级(例如,零),以使WAG250可以只基于PILH参数而计算IWA 260。结果是,MPIC 160可以简单地以例如从处理器#1120到处理器#N 140的连续顺序来调度中断,然后接着重复该顺序。
与公知的固定重定向方案不同,MPIC 160通过基于中断负载平衡参数来识别目标处理器(即,负载最小的处理器),从而提供动态的或时变的中断调度/路由方案。通过识别该目标处理器来处理中断,其它的处理器可以专注于执行它们相应的程序线程。进一步,MPIC 160提供了灵活性以调整中断负载平衡参数的相对重要性。因此,中断调度系统100的整个系统性能可以改善以及优化。
图3是一个流程图300,它表示图2的MPIC 160可以在多处理器系统中控制中断调度的一种方式。本领域的普通技术人员会认识到,使用由处理器系统(例如,图4的处理器系统1000)所执行的可机读指令,可以实现图3的流程图300。特别是,该指令可以由任意许多不同的方法来实现,这些方法利用了存储在任意多种可机读介质,如易失性或非易失性存储器或其它海量存储设备(例如,磁盘,CD,及DVD)上的任意许多不同的的编程代码。例如,可机读指令可以体现在可机读介质中,其中可机读介质如可擦除可编程只读存储器(EPROM),只读存储器(ROM),随机存取存储器(RAM),磁介质,光介质,和/或任何其它合适类型的介质。可选择的,可机读指令可以体现在可编程门阵列和/或是专用集成电路(ASIC)中。进一步,虽然在图3中说明了操作的特定顺序,但本领域的普通技术人员会认识到,这些操作能以其它的时间顺序而执行。再次,该流程图300仅仅是提供作为在多处理器系统中调度中断的一个方法的例子。
流程图300从WAG 250访问与多个处理器110中的每一个相关联的中断调度信息开始(框310)。例如,WAG250访问TPCR212以得到多个处理器110中每一个的PID、PISA等级、PILH等级、以及PIA等级。基于由ILBPR 210的中断负载平衡策略所指定的一个或多个中断负载平衡参数,WAG 250确定多个处理器110中每一个的IWA(框320)。如上所述,WAG 250基于多个处理器110中每一个的PISA等级、ILH等级、和PIA等级来计算多个处理器110的IWA 260。例如,WAG 250基于PISA等级224、PILH等级226、以及PIA等级228来计算处理器#1120的IWA#1262。PISA等级224,ILH等级226,以及PIA等级228中的每一个都基于中断负载平衡策略而因式分解为IWA#1262,其指示PISA、PILH、以及PIA参数的相对权重。在由WAG 250计算多个处理器110的IWA260的基础上,TPS270比较IWA260(框330)。基于IWA260的比较,TPS 270选择多个处理器110中的一个或多个作为目标处理器,MPIC 160将下一个中断调度到该目标处理器(框340)。例如,TPS 270可以从多个处理器11O中选择一个特定的处理器作为目标处理器,因为该特定处理器与最高的IWA相关联。从而,通过生成IPI消息给相应于目标处理器的TPID,TPS 270将中断调度到目标处理器(框350)。结果是,根据中断负载平衡策略,通过调度中断到多个处理器110,MPIC 16改善了系统性能。
图4是适合于实现这里所公开的方法和设备的处理器系统1000的示例框图。处理器系统1000可以是桌面电脑,膝上型电脑,笔记本电脑,个人数字助理(PDA),服务器,Internet设备或是任何其它类型的计算设备。
在图4中说明的处理器系统1000提供存储器和I/O管理功能,以及多个通用和/或专用寄存器,计时器等,它们都是可以被处理器1020所访问或使用的。处理器1020通过使用一个或多个处理器而实现。例如,处理器1020可以通过使用一个或多个IntelPentium技术、IntelItanium技术、IntelCentrinoTM技术、和/或IntelXScale技术而实现。可供选择的,可以使用其它的处理技术来实现处理器1020。处理器1020包括高速缓存1022,它可以通过使用一级统一高速缓存(L1)、二级统一高速缓存(L2)、三级统一高速缓存,和/或任何其它合适的存储数据的结构来实现,如本领域的普通技术人员能容易认识到的那样。
按照惯例,易失性存储器控制器1036和非易失性存储器控制器1038执行这样的功能使处理器1020能够通过总线1040访问主存储器1030并与其进行通信,其中主存储器1030包括易失性存储器1032和非易失性存储器1034。可以由同步动态随机存取存储器(SDRAM),动态随机存取存储器(DRAM),RAMBUS动态随机存取存储器(RDRAM),和/或任何其它类型的随机存取存储器设备来实现易失性存储器1032。可以使用闪存、只读存储器(ROM)、电可擦可编程只读存储器(EEPROM),和/或其它想要类型的存储器设备来实现非易失性存储器1034。
处理器系统1000还包括连接到总线1040的接口电路1050。可以使用任何类型的众所周知的接口标准来实现,其中的接口标准如以太网接口、通用串行总线(USB)、第三代输入/输出接口(3GIO)接口,和/或任何其它合适类型的接口。
一个或多个输入设备1060连接到接口电路1050。输入设备1060允许用户输入数据和命令到处理器1020中。例如,可以由键盘,鼠标,触摸屏,轨迹板,轨迹球,同点(isopoint)和/或语音识别系统来实现输入设备1060。
一个或多个输出设备1070也连接到接口电路1050。例如,可以由显示设备(例如,发光显示器(LED),液晶显示器(LCD),阴极射线管显示器(CRT),打印机和/或扬声器)来实现。因此接口电路1050通常特别包括图形驱动卡。
处理器系统1000还包括一个或多个海量存储器设备1080以存储软件和数据。这样的海量存储器设备1080的例子包括磁盘及驱动器,硬盘驱动器,光盘及驱动器,以及数字通用盘(DVD)及驱动器。
接口电路1050也包括通讯设备如调制解调器或网络接口卡,以有助于通过网络与外部计算机的数据交换。在处理器系统1000和网络之间的通讯链接可以为任何类型的网络连接,如以太网连接,数字用户线(DSL),电话线,蜂窝电话系统,同轴电缆等。
对输入设备1060、输出设备1070、海量存储设备1080和/或网络的访问,通常由I/O控制器1014以传统的方式控制。特别是,I/O控制器1014执行这样的功能它使处理器1020可以通过总线1040和接口电路1050与输入设备1060、输出设备1070、海量存储器设备1080和/或网络进行通讯。
虽然图4所示组件描述为在处理器系统1000之内的单独的方框,但由这些方框所执行的功能可以被集成在单一半导体电路内,或可以使用两个或多个单独的集成电路来实现。例如,虽然I/O控制器1014、易失性存储器控制器1036,以及非易失性存储器控制器1038由单独的方块所描述,但本领域的普通技术人员会认识到I/O控制器1014、易失性存储器控制器1036、以及非易失性存储器控制器1038可以集成到单一的半导体电路内。
虽然已经在这里叙述了某些示例的方法、设备、以及制造产品,本发明的覆盖范围并不局限于此。相反地,本发明覆盖所有照字面意义或是按照相当物的原理,清楚地落在所附权利要求的范围中的方法、设备以及制造产品。
权利要求
1.一种方法,包括基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成中断加权平均值(IWA);以及基于IWA而从多个处理器中识别目标处理器以调度中断。
2.如权利要求1中所定义的方法,其中基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成IWA包括基于处理器中断服务期限等级、处理器中断负载历史等级、以及处理器中断可用性等级中的至少一个而为多个处理器中的每一个生成IWA。
3.如权利要求1中所定义的方法,其中基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成IWA包括识别与处理器中断服务期限等级、处理器中断负载历史等级、以及处理器中断可用性等级中的至少一个相关联的权重。
4.如权利要求1中所定义的方法,其中基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成IWA包括存储一个或多个中断负载平衡参数的权重,并基于所存储的一个或多个中断负载平衡参数的权重而为多个处理器中的每一个计算IWA。
5.如权利要求1中所定义的方法,其中基于IWA而从多个处理器中识别出目标处理器以调度中断包括识别与最高IWA相关联的处理器。
6.如权利要求1中所定义的方法,其中基于IWA而从多个处理器中识别出目标处理器以调度中断包括基于IWA而从多个处理器中识别该目标处理器,以调度硬件中断和软件中断其中之一。
7.如权利要求1中所定义的方法,进一步包括生成中断消息以发送到目标处理器。
8.一种用于存储指令的可机读介质,在执行该存储指令时致使机器基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成中断加权平均值(IWA);以及基于IWA而从多个处理器中识别目标处理器以调度中断。
9.如权利要求8中所定义的可机读介质,其中当执行该指令时,致使机器通过基于处理器识别符、处理器中断服务期限等级、处理器中断负载历史等级、以及处理器中断可用性等级中的至少一个而为多个处理器中的每一个生成IWA,从而基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成IWA。
10.如权利要求8中所定义的可机读介质,其中当执行该指令时,致使机器通过识别与处理器中断服务期限等级、处理器中断负载历史等级、以及处理器中断可用性等级中的至少一个相关联的权重,从而基于与多个处理器关联的中断调度信息而为多个处理器中的每一个生成IWA。
11.如权利要求8中所定义的可机读介质,其中当执行该指令时,致使机器通过识别与最高IWA相关联的处理器,从而基于IWA从多个处理器中识别出目标处理器以调度中断。
12.如权利要求8中所定义的可机读介质,其中当执行该指令时,致使机器通过从多个处理器识别出目标处理器以调度硬件中断和软件中断其中之一,从而基于IWA从多个处理器中识别出目标处理器以调度中断。
13.如权利要求8中所定义的可机读介质,其中当执行该指令时,致使机器生成中断消息以发送到目标处理器。
14.如权利要求8中所定义的可机读介质,其中的可机读介质包括可编程门阵列、专用集成电路、可擦除可编程只读存储器、只读存储器、随机存取存储器、磁介质、以及光介质中的一种。
15.一种设备,包括中断负载平衡策略寄存器(ILBPR),用于存储一个或多个相应于一个或多个中断负载平衡参数的权重;多个目标处理器控制寄存器(TPCR),用于存储与多个处理器相关联的中断调度信息;加权平均值生成器,用于基于相应于一个或多个中断负载平衡参数的权重以及与多个处理器相关联的中断调度信息,而为多个处理器中的每一个生成中断加权平均值(IWA);以及目标处理器选择器,用于基于IWA而从多个处理器中识别出目标处理器以调度中断。
16.如权利要求15中所定义的设备,其中相应于一个或多个中断负载平衡参数的权重包括处理器中断服务期限权重、处理器中断负载历史权重、以及处理器中断可用性权重中的至少一个。
17.如权利要求15中所定义的设备,其中中断调度信息包括处理器识别符,处理器中断服务期限等级,处理器中断负载历史等级,以及处理器中断可用性等级中的至少一个。
18.如权利要求15中所定义的设备,其中目标处理器包括与来自多个处理器的最高IWA相关联的处理器。
19.如权利要求15中所定义的设备,其中目标处理器选择器生成中断消息以发送到目标处理器。
20.如权利要求15中所定义的设备,其中中断包括硬件中断和软件中断中的一个。
21.一种处理器系统,包括输入/输出控制器,被编程以请求中断;以及多处理器可编程中断控制器(MPIC),被编程以基于与多个处理器相关联的中断调度信息,为多个处理器中的每一个生成中断加权平均值(IWA),以及基于IWA,从多个处理器中识别出目标处理器以调度中断请求。
22.如权利要求21中所定义的处理器系统,其中MPIC被编程以基于处理器识别符、处理器中断服务期限等级、处理器中断负载历史等级、以及处理器中断可用性等级中的至少一个,而为多个处理器中的每一个生成IWA。
23.如权利要求21中所定义的处理器系统,其中MPIC被编程以存储中断调度信息的权重,并且基于所存储的中断调度信息的权重而为多个处理器中的每一个计算IWA。
24.如权利要求21中所定义的处理器系统,其中MPIC被编程以识别与相应于多个处理器的处理器中断服务期限等级、处理器中断负载历史等级、以及处理器中断可用性等级中的至少一个相关联的权重。
25.如权利要求21中所定义的处理器系统,其中MPIC被编程以识别与最高IWA相关联的处理器。
26.如权利要求21中所定义的处理器系统,其中MPIC被编程以生成中断消息而发送到目标处理器。
27.如权利要求21中所定义的处理器系统,其中的中断包括硬件中断和软件中断其中之一。
28.一种方法,包括为多个处理器中的每一个而确定多个中断负载平衡参数的值;将负载平衡策略应用于多个中断负载平衡参数的值,以形成表示多个处理器中每一个的与中断相关的性能的多个值;以及基于表示多个处理器中每一个的与中断相关的性能的值,识别多个处理中的一个作为目标处理器以接收中断。
29.如权利要求28中所定义的方法,其中为多个处理器中的每一个而确定多个中断负载平衡参数的值包括确定对于处理器中断服务期限参数、处理器中断负载历史参数、以及处理器中断可用性参数中的至少一个的值。
30.如权利要求28中所定义的方法,其中将负载平衡策略应用于多个中断负载平衡参数的值,以形成表示多个处理器中每一个的与中断相关的性能的多个值包括将中断加权平均值应用于处理器中断服务期限参数、处理器中断负载历史参数、以及处理器中断可用性参数中至少一个的每一个值。
全文摘要
公开了在多处理器系统中用于调度中断请求的方法和设备。在一个示例方法中,基于与多个处理器相关联的中断调度信息而生成多个处理器中每一个的中断加权平均值(IWA)。基于多个处理器中每一个的IWA,而从多个处理器中识别出目标处理器来调度中断。
文档编号G06F13/20GK1737765SQ200410010458
公开日2006年2月22日 申请日期2004年12月8日 优先权日2003年12月8日
发明者S·屠, S·埃迪里索里亚, S·雅米尔, D·米纳, R·F·奥布伦内斯, H·阮 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1