在多处理器系统中编写超传输路由表的系统与方法

文档序号:6375119阅读:118来源:国知局

专利名称::在多处理器系统中编写超传输路由表的系统与方法
技术领域
:本发明涉及多处理器计算机系统的拓扑管理,尤其是涉及在多处理器计算机系统中超传输路由表(hypertransportroutingtables)的动态编写。
背景技术
:一般来说,在多处理器计算机系统中,各个单个处理器与周边装置经由超传输(HT)技术的各输入/输出链接而连接。HT链接是一分组化的局部总线,其允许各装置之间的高速数据传输,以致有很高的通量。在HT链接中,使用信息“分组”将地址、数据与指令以同一线送出。这些信息分组包含装置信息,以用来识别分组的来源地与目的地。该计算机系统内每一装置(例如,处理器等)参照一超传输表来决定分组的路由。HT表维护系统配置信息,比如系统拓扑(例如,处理器互连架构、路由信息)等等。当第一装置(例如,处理器等)收到分组,该第一装置判定该分组是要给该装置本身还是要给该系统内某些其它装置。如果该分组是要给该装置本身,则由该第一装置处理该分组,如果该分组的目的地是别的装置,则该第一装置由HT表查询该分组的目的地路由并决定用那几条HT链接可将该分组转交到该分组的目的地,并转交该分组至可到目的地的合适的HT链接。这些HT链接在系统初始化时设定。在开机过程中,由初始化软件(例如,BIOS等)设定计算机系统。该初始化软件建立操作系统所需的数据结构,并初始化系统硬件组件、设定各硬件配置寄存器、以及设定平台组件的控制。各HT表由初始化软件在开机时编写且被所有装置使用,直到该系统重新初始化。为了维护系统完整性,一旦超传输表被初始化,其不被任何系统软件所更改(例如,操作系统、应用程序等等)。不过,当发生与HT链接有关的系统错误时(例如在链接上的高错误率,链接的失效,在链接上装置的失效等等),该系统必须重新初始化以重建这些超传输表。例如,当一HT链接失效且没有可替换路由时,该系统则发生故障。同样地,如果一装置(例如,处理器,内存等等)失效,则该系统必须关机才能更换该装置。关机与重新初始化系统会造成重要数据与生产力的损失。因此,需要一种可动态编写多处理器系统的超传输表的系统与方法。
发明内容在某些实施例中,提供了一种可动态编写多处理器系统的超传输表的系统与方法。在某些变化的实施例中,超传输表被动态重新编写以修改该多处理器系统的拓扑,得以进行故障调整、诊断、性能分析,处理器热插拔等等。在某些实施例中,通过重新设定这些超传输表可将各HT链接隔离,使得可在被隔离的链接上进行诊断。在某些变化的实施例中,各HT链接被设定以路由分组信息流到某些链接上,使得对这些HT链接的性能测量得以进行,在某些实施例中,可重新设定各HT表以将一处理器隔离,使得该处理器可在不需将整个系统关机时被更换。本发明揭示了一种与多处理器系统有关的方法。该方法包括至少,部分暂停一个或多个系统活动的执行并动态修改一个或多个处理器上的一个或多个路由表。在某些变化的实施例中,这些路由表的每一个代表一进入数据分组的路由目的地。在某些实施例中,该路由目的地为一个或多个处理器。在某些变化的实施例中,该方法包括使用修改过的路由表来指示将进入分组转交到在多处理器系统中至少一个预定的外送链接。在某些实施例中,该方法包括在所有待处理运算完成后暂停这些系统活动。在某些变化的实施例中,该方法包括识别至少一替代内存,将数据从第一内存传送到该替代内存并更新内存映射。在某些变化的实施例中,该方法包括识别至少一替代输入/输出链接,将输入/输出数据传送到该替代输入/输出链接并更新输入/输出映射。在某些实施例中,该方法包括使与第一内存连接的第一处理器禁用并更换该第一处理器。在某些变化的实施例中,该第一处理器的禁用包括将在该第一处理器上执行的所有进程暂停一个或多个并切断第一处理器的电源。在某些实施例中,该方法包括恢复一个或多个系统活动的执行。在某些实施例中,该方法包括识别至少一个测试用的链接并测试该被识别到的链接。在某些实施例中,该测试被执行以进行诊断、故障调整、维护与性能测量中的一项或多项。在某些变化的实施例中,该方法包括暂停一个或多个系统活动,复原在一个或多个处理器上的一个或多个路由表并且恢复一个或多个系统活动的执行。在某些实施例中,这些路由表的恢复包括依据测试结果修改这些路由表。以上是内容概述,从而其中所包含的内容是根据需要,对细节进行简化、概括与省略而来的。因此本领域技术人员应当了解,该概述只是例示性说明的而并非作为任何方式的限定。对本领域技术人员也是显而易见的,在此所揭示的操作可以用许多方法来实现,且可进行改变与修改而不背离本发明及其更广泛的方面。本发明其它方面,创造性特征与优点由权利要求来界定,通过以下所提及的非限定性的详细描述可令人更加清楚。通过参考附图,本领域技术人员更易于了解本发明及其多个目的、特性和优点。图1A示出了根据本发明的一实施例的一示例性系统100。图1B示出了根据本发明的一实施例的系统100的一示例性处理节点。图2示出了根据本发明的一实施例的一路由表200的示例性配置。图3为根据本发明的一实施例,示出了在动态故障调整的处理期间所进行的一示例性操作顺序的流程图。图4为根据本发明的实施例,示出了在动态测试HT链接的过程中,所进行的一示例性操作顺序的流程图。在不同附图中用相同参考符号表示类似或相同的组件。具体实施例方式图1A示出了根据本发明的一实施例的一示例性系统100。系统100为一多处理器系统,有多个处理节点110(1)-(4),这些节点经由链接105相互通讯。每个处理节点包括一处理器115(1)-(4),路由表114与北桥电路117(1)-(4)。然而为了图示说明的目的,在本实施例中图标四个处理节点,然而本领域技术人员应当了解,该系统100可包括任何数目的处理节点。链接105可为任何一种链接。在本实施例中,链接105为根据例如分离-事务总线协议(split-transactionbusprotocol)的双向点对点链接,该协议如HyperTransportTM(HT)协议。链接105可包括一下行数据流与上行数据流。链接信号通常包括链接信息流,例如时序,控制,指令,地址与数据信息与链接边带信号,这些链接信息流使装置之间流动的信息流合格及同步。路由表114提供该系统架构的配置(例如系统拓扑等)。处理节点110使用路由表114来决定数据的路由(例如,节点所产生要给其它处理节点的数据或从其它节点收到的数据)。每一个北桥分别与一内存阵列120(1)-(4)中分别的一个相通讯。在本实施例中,处理节点110(1)-(4)与对应的内存阵列120(1)-(4)在系统100中是“连贯的”部分。连贯是指内存的高速缓存,且在诸处理器之间的HT链接是cHT链接,因为该HT协议包括管理高速缓存协议用的信息。其它(非处理器-处理器)HT链接可为ncHT链接,因为其无内存高速缓存。一视频装置130可经由另一HT链接连接到这些处理节点110的一个。视频装置130可经由另一HT链接连接到南桥140。一个或多个I/O装置150可连接到南桥140。在本实施例中,视频装置130、南桥140、I/O装置150均在系统的”非连贯的”部分中。本领域技术人员应当了解,系统100可比所示出的更复杂,例如,额外的处理节点110可组成系统的连贯部分。此外,尽管处理节点110是以”阶梯架构”图示说明的,但是处理节点110可用不同方式互连(例如星状,网状等)且可具有更复杂的连接方式。图1B示出了根据本发明的一实施例的系统100的一示例性处理节点。处理节点110包括一处理器115,多个HT链接接口112(0)-(2)与一内存控制器111。为了能与一连接在链接上的装置通讯,每一HT链接接口能与一对应HT链接连接。内存控制器111提供对应的内存阵列110(未示出)用的内存接口与管理。一十字交叉网113传送例如从其它处理节点收到的或由处理器115产生分别要给处理器115且/或适当的HT链接接口112的请求、响应与广播信息。通过位于每一处理节点110内的多个配置路由表114指示请求、响应与广播信息的传送。在本实施例中,路由表114是包括在十字交叉网113内的,不过,路由表114可设定在处理节点110内任何地方(例如内存中、处理器的内部储存区、外部可寻址的数据库等等)。本领域技术人员应当了解该处理节点110可包括其它处理组件(例如,冗余HT链接接口,处理器与内存控制器所需的各种外设组件等等)。图2示出了根据本发明的一实施例的一路由表200的示例性配置。诸处理节点可包括多个配置路由表200。为了图示说明的目的,在本实施例显示的是一32位表。不过,本领域技术人员应当了解路由表可设定成可使用任何数目的位以及这些路由表内的每一位可根据特定应用的需要而被指定。在本实施例中,路由表200包括三种条目广播路由信息202,响应路由信息204与请求路由信息206。为了图示说明的目的,每一组与路由有关的信息指派一个位给每一个HT链接(例如,HT链接112(0)-(2)等等)以及指派一个位给处理节点本身使用。每一处理节点分派一个路由表,例如,在一有8个处理节点的系统中,每一处理节点有8个配置路由表。可读写表的各条目,且通常不是持续的。路由表内的条目可用任何公知方式编写,例如01h表示在对应的链接上收到的分组必须被接收处理器接受而00h可表示分组必须转交到适当的链接,反之亦然。请求路由信息206以定向请求的方式使用。该数值表示哪一个外送链接是供定向到特定的目的地节点的请求分组使用。例如,一给定位位置为1时可表示将该请求路由经过该对应的HT链接。当最低有效位设定为1时,可表示该请求是要送到接收处理节点的处理器。请求路由信息字段206表示哪一个链接可用来转交请求分组。请求分组通常只路由到一个目的地而该路由表是采请求分组的请求路由信息字段内的目的地节点标识符作为索引。例如,在请求分组的请求路由信息字段内各位可设定为位路由到接收节点,位[1]-路由到HT链接0,位[2]-路由到HT链接1,以及位[3]-路由到HT链接2等等。本领域技术人员应当了解可以用不同方式设定这些路由表以反映多处理器系统的拓扑。例如,复杂的路由方案可使用路由表矩阵的组合而实施或十字交叉网113可经设定成能进一步处理和修改进入分组以供在系统内适当的路由使用,诸如此类。响应路由信息204是用于响应先前收到的请求分组。每一条目内的数值表示所用的外送HT链接,该外送HT链接用于将特定响应分组定向到其目的地节点。响应路由信息字段204表示响应分组所要转交的节点或链接。响应分组通常只发送到一个目的地而该路由表使用响应分组内的目的地节点标识符作为索引。例如,在给定位上的1可表示该响应经过对应的输出链接来路由,而0是表示该响应是要送到这个处理节点的处理器。在一四处理节点系统中,各个位可设定为位-路由到本节点,位[1]路由到HT链接0,位[2]-路由到HT链接1,以及位[3]-路由到HT链接2,诸如此类。广播路由信息202以广播和探针类型的数据分组方式使用。一般来说,广播与探针数据分组被转交到系统内的每一处理节点。例如,处理节点可用广播分组来传播信息给系统内所有节点以及送出一探针分组查询每一处理节点的相关状态(例如内存可用性、处理能力、链接状态等等)。每一条目可包含与该节点连接的每一HT链接所用的单一位。例如在一有四个链接的系统中,可分派四个位用来表示每一链接。此外亦可分配两个位以二进制表示每一链接。本领域技术人员应当了解可设定任何方案来表示系统内的链接。如果设定好对应的各个位,分组可被转交到所有链接上。例如位0,当设定为1时,可表示该广播是要送给接收处理节点的处理器。广播路由信息字段表示广播分组所要转交的节点或(各)链接。广播可路由到一个以上的目的地。进入分组的来源地字段的节点ID可在路由表中为索引且指出节点标识符。例如位-路由到此节点,位[1]路由到HT链接0,位[2]路由到HT链接1,以及位[3]路由到HT链接2,诸如此类。当一处理节点接收到一请求时,该处理节点的对应的北桥检查其目的地标识符以判定哪一节点为请求的目的地然后转交该分组。本领域技术人员应当了解尽管在此描述的是一32位条目,但是路由表可使用字段的各种不同组合来设定。例如,可依据数据分组的类型界定个别的路由表(例如请求、响应、广播等等),使得当处理节点收到数据分组时,该处理节点可根据数据分组的类型参照适当的路由表。同样地,可用各种位与路由表的组合来设定不同的且可能更复杂的系统路由方案。图3是根据本发明的一实施例,图示说明在动态故障调整的处理期间所进行的一示例性操作顺序的一流程图。尽管以一特定的次序描述这些操作,但是在此所描述的各操作可用其它顺序(或并行)次序来进行,只要操作之间的依赖关系允许就可。一般来说,各操作的特定顺序是设计选择的问题且本领域技术人员根据在此所述内容应知悉不同的操作顺序。首先,收到关于装置(例如处理器、链接等等)的通告(305)。计算机系统上执行的软件例进程序(例如驱动器、系统应用程序等等)可接收该通告。本领域技术人员应了解该软件例程可由处理器执行,作为系统内存内的常驻软件或可依指令的发布而执行(例如通过用户应用程序、系统呼叫、由用户输入的人工指令等等)。通告可能是一由系统或用户人工输入的指令所发出的错误信息(例如处理器/链接失效、内存阵列错误等等)。该通告也可集成到在该系统上执行的用户应用程序内。收到通告后该程序会识别失效的装置(310)。装置标识符可为通告的一部分。可用由系统分配的独一装置标识符识别失效的装置,或系统所采用的任何其它方法在运算中寻址装置。为了图示说明的目的,在本实施例中,该装置是多处理器系统内的数个处理器中的一个。本领域技术人员应当了解系统中任一其它装置可用来执行该程序。当该装置为一处理器时,该程序判定其它处理器是否有足够的替代内存可用以重新映射失效处理器的内存(315)。如果其它处理器没有足够的多余内存可替代失效处理器的内存,则该程序产生适当的错误(320)。当内存不足以取代失效处理器的内存,则该系统可能需要关机。如果在其它处理器有足够的内存,则该程序判定输入/输出HT链接是否连接到该失效处理器(325)。通常在多处理器系统中,I/O装置连接到各处理器中的任何一个,例如,如图1所示的处理器115(1)。如果该I/O装置与该失效处理器连接,则该I/O链接需要重新分派使得在失效处理器切断后其它处理器可继续与I/O装置通讯。如果没有输入/输出HT链接与该失效的处理器连接,则该程序接着进行拓扑影响的确定(355)。如果输入/输出HT链接与该失效的处理器连接,该处理器首先判定在该替代链接上是否有替代HT链接可路由I/O信息流(330)。在多处理器系统中,可设定备用的冗余HT链接以改善系统可靠性。如果没有备用I/OHT链接可用,则该程序将该失效的处理器的本地DRAM传送到在步骤315内识别到的备用内存(335)。本地DRAM的传送需要更新系统的DRAM映射,从而如果一装置企图存取该失效处理器的DRAM内的储存区时,则这些请求可转交到适当的备用位置。通知操作系统相关的改变(340)。本领域技术人员应当了解给操作系统的通告是根据操作系统而定。例如,在某些应用中,内存的重新映射可以对于操作系统是透明的而在其它情况操作系统可能需要知道处理器是否离线。在有多余处理器的情形下,该处理器的更换对于操作系统可以是透明的。如果失效处理器为唯一连接到这些I/OHT链接的处理器,则该失效处理器不可离线。该程序产生适当的错误(320)。错误信息通知程序启动实体(例如用户应用程序、用户的人工指令、操作系统等等)因I/O链接而不能将处理器离线。如果有备用HT链接,该程序路由I/O信息流到适当的备用I/OHT链接(345)。I/OHT链接到备用链接的路由可能需要更新路由表及/或系统的I/O映射。该程序更新I/O映射(350)。一般来说,如果系统内有备用路由链接,则由初始化软件(例如BIOS等等)编写路由表中的备用路由。该程序判定将失效处理器离线是否会影响系统的拓扑(355)。将一处理器离线可能会隔离另一处理器时,系统的拓扑可能会被影响。例如,在一四路处理器架构中(例如图1所示),有两条路径到每一处理器从而如果两个相邻的处理器为离线则其它处理器仍可相互通讯,不过如果两个交替的处理器为离线(例如图1的处理器115(1)与115(4)),则剩下的处理器将无法相互通讯。本领域技术人员应当了解失效处理器对拓扑的影响是根据架构而定(例如阶梯、网状、星状等等)。如果将失效处理器离线,会影响该多处理器系统的拓扑则该程序会产生适当的错误信息(320)。在此情况中,该失效处理器是不能离线的。如果不影响系统的拓扑,则该程序通知操作系统该失效处理器不再提供服务(360)。该程序暂时中止(或暂停)系统活动到一安全点(365)。系统活动的暂时中止(暂停)可能涉及异动事务(in-flighttransaction)的完成。例如,如果一内存读取已开始则在暂时中止该程序之前必须要让它完成。处理器高速缓存内的东西也要清出。本领域技术人员应当了解可用不同方法将系统的活动暂时中止(或暂停)。例如,如果以适当的指令设定计算机的操作系统,则可以执行该操作系统指令。不然,每一处理器可暂时中止执行或通过进入暂时中止模式以延迟目前线程的执行(例如,执行一暂停指令,执行一暂停中断例程等等)。同样地,也可控制其它不同的装置(例如总线主控器,图形控制器等等)以暂时中止对应的活动。该程序将失效处理器的DRAM传送到315内识别到的交替内存(370)。区域DRAM的传送需要更新系统的DRAM映射,从而如果有一装置要存取失效处理器的DRAM的储存区则请求可被转交到适当的备用位置。该程序更新这些路由表(375)。这些路由表被动态更新以重新路由所有起初是要给失效处理器的信息流到备用链接与处理器。例如,参考图1A,如果处理器115(1)是失效的处理器,则处理器115(2)可经由处理器115(4)与处理器115(3)通讯。修改处理器115(2)的路由表以移除处理器115(1)作为到处理器115(3)的有效路由。同样地,将其它处理器的路由表进行适当修改以反映该处理器网络内的改变。这些路由表可通过呼叫初始化软件(例如,BIOS等等)的特定适当的例程而重新被设定,或路由表重新配置可被集成到执行将失效处理器隔离的软件驱动程序中的例进程序。本领域技术人员应当了解根据系统架构可使用不同的方法重新设定这些路由表。一旦将这些路由表更新,可将连到该失效处理器的链接切断。通过将处理节点内的相关链接接口禁用可切断这些链接。当路由表内的链接更新后,也可调整相关的I/O映射以反映这些链接的改变。这些I/O映射可根据特定系统配置而定(例如,基于PCI的标准配置等等)。然后该程序切断该失效处理器的电源(385)。一旦处理器被断电,则可实际更换该处理器(390)。在该失效处理器用新的处理器取代后,可用不同的中断与指令恢复系统活动,例如,如果该处理器是在暂停中断例程中,则可通过更换该失效处理器后产生人工中断检测到架构内的改变。同样地,如果是用人工激活该程序则人工指令输入可恢复这些系统活动。当这些系统活动恢复后,隔离该失效处理器的软件驱动程序可通过呼叫相关例程(例如执行例程本身,呼叫BIOS例程等等)重建这些路由表。这些路由表的重建可设定该换新的处理器到系统拓扑中。本领域技术人员应当了解即使不更换失效处理器也可恢复这些系统活动。在此情况下,该系统运行能力较低(例如处理能力、内存等等)。进一步,在系统是在没有失效处理器的情况下运行时,可进行诊断以判定该失效处理器的失效原因。图4是根据本发明的一实施例,示出了在动态测试HT链接的处理期间所进行的一示例性操作顺序的流程图。尽管以一特定的次序描述这些操作,但是在此所描述的各操作可用其它顺序(或并行)次序来进行,只要操作之间的依赖关系允许就可。一般来说,各操作的特定顺序是设计选择的问题且本领域技术人员根据在此所述内容应知悉不同的操作顺序。开始的时候,识别一个或多个链接供测试使用(410)。HT链接运送不同装置间的信息(例如处理器、内存、不同控制器等等)。这些链接可用于测试各种系统相关功能(例如诊断、性能评估等等)。举例来说,如果系统一直产生一特定链接的错误信息则可能有必要对那特定的链接进行预设的诊断。同样地,有时,可测试链接以判定连接到该链接的链接与装置的性能。本领域技术人员应当了解可针对各种应用特定目的来监测与测试HT链接。该诊断与测试软件可在多处理器系统中的任一处理器上执行。一般来说,在多处理器系统中,指定处理器之一为“主”处理器。该主处理器通常执行系统相关的管理功能(例如诊断等等)。诊断软件通常是常驻在主处理器中(例如在本地储存器中等等)。然而,本领域技术人员应当了解可在不同处理器间分散并共享这些系统管理功能。当一诊断例程在主处理器中执行时(例如经由用户应用程序、例程系统呼叫、用户的人工激活、软件驱动例程的执行等等),测试参数(例如数据速率、速度、计时、通量等等)则是预设好的。例如,可测试一链接同时处理两个以上处理器的信息流等等。将这些系统活动暂时中止至安全执行点(420)。例如,如果一内存读取运算是在进行中则允许在内存读取进程暂时中止之前完成该内存读取运算。可将与测试链接有关的系统活动部分暂时中止而不相关的活动可以继续。例如,如果是要测试一条在两个处理器之间的链接,则只有与该特定处理器有关的活动可暂时中止而本地活动(例如,读/写到本地储存器等等)能继续进行。然而,有些测试可能需要本地信息流经由测试链接经过长的路径以测试该链接的通量。在这种情况下,即使本地活动也可以暂时中止。例如,参考图1A,如果要测试的是在处理器115(1)与处理器115(2)之间的链接,则可强迫在处理器115(1)与处理器115(3)之间的通讯经由处理器115(4)与处理器115(2),这样可以增加处理器115(1)与处理器115(2)之间的链接上额外的信息流以进行测试与性能评估。当将适当的系统活动暂时中止时,该程序重新设定这些路由表(430)。将这些路由表重新设定成可强迫信息流到或离开测试链接。这些路由表的重新设定也可能需要重新设定内存与I/O映射,这取决于系统的拓扑。如果需要重新设定内存与I/O映射,则修改这些内存与I/O映射以便于该特定链接的测试。然后将这些系统活动恢复成正常操作(440)。在以新的路由配置的正常操作期间,测试这些链接与装置(例如进行诊断、故障评估、性能测量等等)(450)。该程序继续判定是否已完成该测试(460)。当该测试完成时,该进程暂时中止系统活动(470)。将这些路由表复原(480)。可将这些路由表复原为测试前原来的设定或可根据测试结果更新这些路由表。例如,如果测试判断在内存中的某些数据经常被存取且造成其它信息流用的相关链接的拥塞,则更新该内存映射以解除该特定链接的拥塞。本领域技术人员应当了解可根据系统拓扑与特定应用程序更新这些路由表。该程序恢复系统活动(490)。尽管所描述的是一测试程序,本领域技术人员应当了解该程序可用于进行性能分析。例如,可通过动态修改路由表来重新设定这些链接,其能引导数据流到特定处理器或链接,该特定处理器或链接可以用性能分析应用程序来监督。性能分析应用程序可分析数据流以进行适当的测量。同样地,该程序可用在需要动态修改路由表的不同的应用程序。以上的说明意在描述本发明的至少一个实施例,而并非用来限定本发明的保护范围。相反地,本发明的保护范围是由所附的权利要求所界定。因此本发明的其它实施例包括对以上描述的其它的变化、修改、增添及/或改善。例如,本领域技术人员应可认知上述各操作的功能间的界限只是示例性说明。多个操作的功能可组合成为单一操作,且/或单一操作的功能可分散到额外的操作中。此外,其它的实施例可能包括一特定操作的多个实例,以及可能改变在不同的其它实施例中各操作的次序。在此讨论的各操作可包括由系统用户、硬件模块及/或软件模块执行的多个步骤。在其它实施例中,例如图1至图4的操作是常驻在计算机可读介质上及/或常驻在计算机系统内及/或被传送到计算机系统以作为计算机程序产品的一部分的软件模块的直接或间接的代表。因此上述的方法、与其相关的操作及其模块可在一计算机系统上执行及/或从计算机可读介质执行之,其中该计算机系统配置用来执行该方法的操作。计算机系统有许多形式,包括但不限定于大型计算机、微型计算机、服务器、工作站、个人计算机、笔记计算机、个人数字助理、各式各样的无线装置与嵌入式系统,无法一一列举。典型的计算机系统包括至少一个处理单元,与其关联的内存及多个输入/输出(I/O)装置。计算机系统根据程序处理信息并经由I/O装置产生所得输出信息。程序是一串指令,例如特定应用程序及/或操作系统。计算机程序通常储存于计算机内部可读取的储存介质或经由计算机可读取的传送介质传送到该计算机系统。计算机处理程序通常包括执行中(运行中)的程序或程序的部分,当前程序的数值与状态信息,以及操作系统用以管理进程的执行的资源。一计算机父进程可产生其它的子进程用来帮助执行该父进程的整体功能。因为父进程特别产生子进程以执行该父进程的整体功能的一部分,由子进程(及孙进程等等)所执行的功能有时可能被描述成由父进程来执行。以上所述的方法可在计算机可读介质中执行,用来设定一计算机系统执行本方法。计算机可读介质可以是永久性的、可移除的或远程连接到系统100或另一系统。计算机可读介质可以包括但不限定于诸如以下事物的任何数量磁性储存介质(包括硬盘及磁带储存介质);光学储存介质例如光盘介质(例如CD-ROM、CD-R等等)以及数字视频磁盘储存介质;全像存储器(holographicmemory);非易失性内存储存介质(包括基于半导体的存储器单元,例如闪存,EEPROM,EPROM,ROM);铁磁数字存储器;易失性储存介质(包括寄存器、缓冲器或高速缓存、主存储器、RAM等等);以及数据传送介质(包括永久与间歇的计算机网络、点对点电信设备、载波传送介质、互联网,无法一一列举)。其它新型与不同类型的计算机可读介质可用来储存及/或传送在此讨论的软件模块。应了解在此描述的架构只是示例性,而事实上可组装许多其它架构成来实现相同的功能。抽象地说,但仍有明确的意义,能实现相同功能的各组件的任何一种排列,是使得必要功能得以实现的有效“关联”。因此,在此任何两个的组件结合成可实现一特定机能可视为是互相“关联的”,以使得必要机能得以实现,而不管是哪一种架构或中间组件。同样地,任何两个如此关联的组件也可视为是互相“操作性连接的”,或“操作性耦合的”得以实现必要的功能。因为以上详细描述是示例性的,当所描述的是“一实施例”时,其是一示例性实施例。因此,上下文中所用的“一”这个字并非意在表示一个且只有一个实施例具备所述的特性。相反地,许多其它实施例可能,且经常如此,具备示范性的“一实施例”所描述的特性。因此,如以上所使用的,当在一实施例的上下文中描述本发明时,该一实施例是本发明的众多可能实施例中的一个。尽管已揭示并描述本发明的特定实施例,显然对于本领域技术人员来说,根据此处的教学,可使用各种不同的修改、替代的构造、以及均等物而不脱离本发明请求保护的范围。因此,所附的权利要求范围所涵盖的范畴包括所有这种改变,修改等等,都在本发明的保护范围内。再者,应了解本发明完全由所附权利要求范围所界定。以上描述并非意在穷举本发明的所有的实施例。除非在其它地方明白陈述,在此呈现的每一实例均为非限制性的或非排除性的实例,不论是否非限制性的术语、非排除性的术语或类似的术语同时陈述于每一实例。虽然尝试概述某些示例性实施例及其变化,但是其它实施例及/或变化均在以下权利要求所界定的本发明范围内。权利要求1.一种与多处理器系统有关的方法,其包括下列步骤至少部分暂停一个或多个系统活动的执行;以及动态修改在一个或多个处理器上的一个或多个路由表,其中这些路由表的每一个表示进入数据分组的路由目的地。2.根据权利要求1所述的方法,其进一步包括下列步骤使用这些已修改的路由表指示将该进入分组转交给在多处理器系统中至少一个外送链接。3.根据权利要求1所述的方法,其进一步包括下列步骤识别至少一个替代内存;及更新内存映射以反映该至少一替代内存。4.根据权利要求1所述的方法,其进一步包括下列步骤识别至少一条替代输入/输出链接;传送输入/输出数据至该替代输入/输出链接;以及更新输入/输出映射。5.根据权利要求1所述的方法,其进一步包括下列步骤识别用于测试的至少一条链接;测试该被识别到的链接;以及其中修改一个或多个路由表是根据该测试的结果。6.一种设备,其包括多个处理器;以及连接至这些处理器的每一个的一个或多个储存单元其中这些处理器的每一个经由至少一点对点链接而连接,且至少一个处理器的每一个包括一个或多个表示一进入数据分组的路由目的地的路由表,且该处理器被配置成动态修改这些路由表。7.一种计算机程序产品,其储存于至少一计算机可读介质,且其包括一组指令,该组指令配置成至少部分暂停一个或多个系统活动的执行;以及动态修改一个或多个处理器上的一个或多个路由表,其中这些路由表的每一个表示一进入数据分组的路由目的地。8.根据权利要求7所述的计算机程序产品,其中该修改过的路由表指示将该进入分组转交到在多处理器系统中至少一个预定的外送链接。9.根据权利要求7所述的计算机程序产品,进一步包括将该组指令进一步设定成识别至少一个替代内存;以及更新内存映射。10.根据权利要求7所述的计算机程序产品,进一步包括将该组指令进一步设定成识别至少一条替代输入/输出链接;传送输入/输出数据到该替代输入/输出链接;以及更新一输入/输出映射。全文摘要在某些实施例中,本发明描述一在多处理器系统中动态编写超传输(HT)表(114)的系统与方法。HT表被动态重新编写成可修改该多处理器系统的拓扑,以进行故障调整、诊断、性能分析、处理器热插拔等等。通过重新设定这些HT表,可将各HT链接(105)隔离,使得可在这些已隔离的HT链接上进行诊断。HT链接被重新设定成能在某些链接上路由分组信息流,得以对这些HT链接进行性能测量。HT表可被重新设定成可将一处理器(115)隔离,而可更换该处理器且不需将整个系统关机。文档编号G06F13/40GK1729662SQ200380107157公开日2006年2月1日申请日期2003年11月6日优先权日2002年12月19日发明者D·A·凯克,P·德弗里恩特申请人:先进微装置公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1