【技术实现步骤摘要】
【国外来华专利技术】具有中断表的用于多级虚拟化的定向中断
技术介绍
[0001]本公开一般涉及计算机系统内的中断处理,尤其涉及在多处理器计算机系统中处理由总线连接模块产生的中断。
[0002]中断用于向处理器发信号通知事件需要处理器的注意。例如,硬件设备(例如,经由总线与处理器连接的硬件设备)使用中断来传达它们需要来自操作系统的注意。在接收处理器当前正在执行某些活动的情况下,该接收处理器可以响应于接收到中断信号而挂起它当前的活动、保存它的状态、以及例如通过执行中断处理程序来处理中断。由于接收而导致的处理器的当前活动的中断仅仅是暂时的。在处理了中断之后,处理器可以恢复它挂起的活动。因此,中断可以通过消除处理器在轮询循环中等待外部事件的无效等待时间来允许性能改进。
[0003]在多处理器计算机系统中,可能出现中断路由效率问题。挑战是以高效的方式将由硬件设备(例如总线连接模块)发送的中断信号转发到被分配以由操作系统使用的多个处理器中的处理器。在中断被用于与虚拟机上的客户操作系统通信的情况下,这可能是特别具有挑战性的。管理程序或虚拟机监视器(VMM)创建并运行一个或多个虚拟机,即客户机。虚拟机向在其上执行的客户操作系统提供虚拟操作平台,同时隐藏底层平台的物理特性。使用多个虚拟机允许并行运行多个操作系统。由于在虚拟操作平台上执行,因此,处理器的客户操作系统的视图一般可以不同于处理器的底层(例如物理)视图。客户操作系统使用虚拟处理器ID来标识处理器,该ID通常与底层逻辑处理器ID不一致。管理客户操作系统的执行的管理程序定义底层逻辑处理器ID与由客户操作系统使 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种用于向第一客户操作系统提供中断信号的方法,所述中断信号使用被分配以由所述第一客户操作系统使用的计算机系统的多个处理器中的一个或多个处理器来执行,所述计算机系统还包括经由总线和总线附接设备与所述多个处理器可操作地连接的一个或多个总线连接模块,所述计算机系统还包括与所述总线附接设备可操作地连接的存储器,所述多个处理器中的每个处理器被分配有逻辑处理器ID,所述逻辑处理器ID由所述总线附接设备使用以寻址相应的处理器,被分配以由所述第一客户操作系统使用的所述多个处理器中的每个处理器还被分配有中断目标ID,所述中断目标ID由所述第一客户操作系统和所述一个或多个第一总线连接模块使用以寻址相应的处理器,所述第一客户操作系统是使用第二客户操作系统作为托管所述第一客户操作系统的主机来实现的,所述方法包括:由所述总线附接设备从所述总线连接模块之一接收具有中断目标ID的中断信号,所述中断目标ID将被分配以由所述第一客户操作系统使用的所述处理器中的一个处理器标识为用于处理所述中断信号的目标处理器,由所述总线附接设备从被存储在所述存储器的被分配给所述第二客户操作系统的第一存储器区段中的中断表取回被分配给所接收的中断目标ID的中断表条目的第一副本,所述中断表条目的所述第一副本包括所接收的中断目标ID到逻辑处理器ID的映射,由所述总线附接设备使用所述中断表条目的所述第一副本来将所接收的中断目标ID转换成所述逻辑处理器ID,由所述总线附接设备使用从所述转换得到的所述逻辑处理器ID以直接寻址所述目标处理器来将所述中断信号转发到所述目标处理器以用于处理。2.根据权利要求1所述的方法,其中,所述存储器在被分配给所述第一客户操作系统的第二存储器区段中包括具有每中断目标ID的定向中断概括指示符的定向中断概括向量,每个定向中断概括指示符被分配给中断目标ID以指示是否存在被寻址到相应的中断目标ID的第一中断信号要被处理,所述存储器在所述第一存储器区段中包括转发向量,所述转发向量包括第一组转发向量条目,所述第一组转发向量条目包括用于所述定向中断概括向量的每个所述定向中断概括指示符的被分配给相应的定向中断概括指示符的转发向量条目,每个转发向量条目指示它被分配给的相应的定向中断概括指示符是否要被更新以便向所述第一操作系统指示存在被寻址到相应的中断目标ID的第一中断信号要被处理,所述方法还包括:由所述总线附接设备检查所述目标处理器是否被调度以由所述第一客户操作系统使用,如果所述目标处理器被调度以由所述第一客户操作系统使用,则执行所述转换和直接转发,否则,由所述总线附接设备使用广播来将用于处理的所述第一中断信号转发到所述第一操作系统,所述广播包括:由所述总线附接设备选择所述第一组转发向量条目中被分配给所接收的中断目标ID的转发向量条目,以及更新所选择的转发向量条目,以使得它指示
它被分配给的所述定向中断概括指示符要被更新以便向所述第一操作系统指示存在被寻址到相应的中断目标ID的第一中断信号要被处理。3.根据权利要求2所述的方法,其中,所述第一存储器区段还包括客户机中断表,所述客户机中断表包括第一组客户机中断表条目,所述第一组客户机中断表条目包括用于所述定向中断概括向量的每个所述定向中断概括指示符的定向中断概括地址指示符,其中相应的定向中断概括地址指示符指示相应的定向中断概括指示符在所述第二存储器区段中的存储器地址,所述第一组转发向量条目中的所述转发向量条目的分配是使用所述客户机中断表来实现的,其中所述第一组转发向量条目中的每个转发向量被分配了所述第一组客户机中断表条目中的客户机中断表条目,相应的客户机中断表条目的定向中断概括地址指示符指示相应的转发向量条目被分配给的所述定向中断概括的所述存储器地址。4.根据权利要求2所述的方法,其中,所述转发向量条目每一个被实现为单个位。5.根据权利要求2所述的方法,其中,所述定向中断概括向量被实现为存储器中的连续区域。6.根据权利要求2所述的方法,其中,所述定向中断概括指示符每一个被实现为单个位。7.根据权利要求1所述的方法,其中,所述中断表条目的所取回的副本还包括指示被分配给所接收的中断目标ID的所述转发向量条目在所述第一存储器区段中的存储器地址的转发向量条目地址指示符,所述方法还包括:由所述总线附接设备使用由所述中断表条目的所取回的副本所包括的所述转发向量条目地址指示符来识别被分配给所接收的中断目标ID的所述转发向量条目。8.根据权利要求1所述的方法,其中,所述中断表条目的所取回的副本还包括指示由所述中断目标ID标识的所述目标处理器是否被调度以由所述第一客户操作系统使用的运行指示符,所述方法还包括:由所述总线附接设备使用由所述中断表条目的所述副本所包括的所述运行指示符来检查所述目标处理器是否被调度以由所述第一客户操作系统使用。9.根据权利要求8所述的方法,其中,所述中断表条目的所取回的副本还包括:标识所述第一客户操作系统被分配到的逻辑分区的第一逻辑分区ID,以及指示被分配给所述第一客户操作系统的客户机中断状态区域在所述第一存储器区段中的存储器地址的第一客户机中断状态区域地址指示符。10.根据权利要求9所述的方法,其中,被分配给所述第一客户操作系统的所述客户机中断状态区域包括未决中断指示符,所述未决中断指示符指示指示用于由第一操作系统使用广播来处理的到第一操作系统的第一中断信号是否是未决的,所述方法还包括:如果使用广播来转发所述第一中断信号,则由所述总线附接设备更新所述未决中断指示符,以使得更新后未决中断指示符指示用于由所述第一操作系统使用广播来处理的第一中断信号是未决的。11.根据权利要求1所述的方法,所述方法还包括:由所述总线附接设备从设备表取回设备表条目的副本,所述设备表条目包括指示所述中断表的存储器地址的中断表地址指示符,所述总线附接设备使用所述中断表的所述存储器地址来取回所述中断表条目的所述第一副本。
12.根据权利要求11所述的方法,其中,所述设备表被存储在所述存储器的第三存储器区段中,所述第三存储器区段被保护以免被所述第一操作系统和所述第二操作系统访问。13.根据权利要求12所述的方法,其中,所述设备表条目的所取回的副本还包括:标识所述第一客户操作系统被分配到的所述逻辑分区的第二逻辑分区ID,以及指示被分配给所述第一客户操作系统的所述客户机中断状态区域在所述第一存储器区段中的所述存储器地址的第二客户机中断状态区域地址指示符,所述方法还包括:由所述总线附接设备使用由被存储在可由所述第二客户操作系统访问的所述第一存储器区段中的所述中断表条目提供的所述第一逻辑分区ID和所述第一客户机中断状态区域地址指示符的第一组合与由被存储在被保护的第三存储器区段中的设备表条目提供的第二逻辑分区ID和第二客户机中断状态区域地址指示符的第二组合的比较,来检查所述中断表条目未被所述第二客户操作系统改变,所述第一组合和所述第二组合的匹配指示所述中断表条目未被改变。14.根据权利要求11所述的方法,其中,所述设备表条目还包括标识所述客户操作系统被分配到的逻辑分区的逻辑分区ID,由所述总线附接设备转发所述第一中断信号还包括与所述第一中断信号一起转发所述逻辑分区ID。15.根据权利要求11所述的方法,其中,所述设备表条目还包括标识所述第一中断信号被分配到的中断子类的中断子类ID,由所述总线附接设备转发所述第一中断信号还包括与所述第一中断信号一起转发所述中断子类ID。16.根据权利要求1所述的方法,其中,所述第二存储器区段还包括被分配给相应的中断目标ID的每中断目标ID的定向第一中断信号向量,每个定向第一中断信号向量包括被分配给所述第一总线连接模块的每第一总线连接模块的第一中断信号指示符,每个定向第一中断信号向量指示是否存在由所述第一总...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。