资源动态再配置的方法、系统和设备的制作方法

文档序号:7690862阅读:114来源:国知局
专利名称:资源动态再配置的方法、系统和设备的制作方法
技术领域
本发明涉及支持联机增加和删除系统资源和/或再配置操作。例如,本 发明易于在多操作系统(OS)分区间动态分配系统资源。
技术背景当前系统基于前端总线(FSB),不允许对独立总线组件进行热插拔。 相反,新的总线技术方案支持增加和删除系统资源,但受限于粗糙的粒度, 例如要求FSB上的所有处理器遵循系统控制芯片组。发明内容一种便于资源动态再配置的系统,包含具有耦合到网络结构的多个髙 速緩存代理和本地代理的点对点结构;该系统支持独立资源的动态再配置。一种联机增加独立资源的方法,包含为独立资源建立物理和逻辑信 息;在正在运行的系统(RS)和该独立资源之间定义串行链路;设置通向 固件的路径;在该独立资源上运行自测试和初始化;向该RS上的固件执行 指示该独立资源准备好加入至少一个分区;向该RS上的搡作系统(OS)指 示该独立资源准备Jt予加入至少 一个分区。一种联机删除处理器节点的方法,包含要求移除处理器节点;对于 要求移除的该处理器节点,从脱机的处理器和存储器中移走应用程序;从 各个相关列表中移除要求移除的该处理器节点;产生要求移除的该处理器 节点确实被移除的信号。一种联机删除存储节点的方法,包含迁移使用存储节点的应用程序 和设备驱动程序;刷新可分页存储器到磁盘,或者如果有足够的空闲存储 器,贝'J将待移除的该存储节点的存储内容拷贝到务賭器的另一区域即被移 到其它存储段。一种联机删除存储节点的方法,包含迁移使用存储节点的应用程序 和设备驱动程序;刷新可分页存储器到磁盘,或者如果有足够的空闲存储 器,则将待移除的该存储节点的存储内容拷贝到肩4者器的另 一 区域即被移 到其它存储段;如果移除的存储节点被分配给直接存储器访问(DMA)设 备,则停止设备驱动程序或将其分配给新的緩存器。一种联机删除存储节点的方法,包含迁移使用存储节点的应用程序 和设备驱动程序;刷新可分页存储器到磁盘,或者如果有足够的空闲存储 器,贝'J将待移除的该存储节点的存储内容拷贝到^4老器的另一区域即被移 到其它存储段;如果移除的存储节点被分配给直接存储器访问(DMA)设 备,则停止设备驱动程序或将其分配给新的緩存器;固件针对移除的存储 节点定义的地址范围刷新处理器和多个平台高速緩冲存储器。一种便于资源动态再配置的系统,包含具有耦合到网络结构的多个 高速緩存代理和本地代理的点对点结构;该系统用停止和激活操作支持独 立资源的动态再配置;该动态再配置允许^:机增加和联机删除独立资源, 且不要求重新启动操作系统。


在说明书的结论部分特别指出并清楚地要求了主题。然而所要求的主 题,关于操作的组织和方法连同对象、特4正和其优点,在结合附图参考以 下详细描述时可以更好的理解,其中图1是一个实施例使用的协议结构。图2说明一个实施例使用的联机增加资源的方法的流程图。图3说明一个实施例使用的联机删除资源的方法的流程图。图4是系统的多个实施例。具体实施例以下说明中描述了 一种高速点对点网络(^)Tp)的细粒动态再配置的方 法、设备和系统,为了i兌明的目的,阐述许多细节以便全面理解本发明。然 而,对于本领域技术人员而言,不需要这些细节即可实践本发明。当前技术发展的领域涉及可靠性、可用性和可服务l生(RAS)以及动 态再配置。如前所述,当前系统基于前端总线(FSB),该前端总线不允许对单个总线组件进行热插拔。相瓦新的总线技术方案支持增加和删除系统资源,但受限于相教的粒度,例如,要求FSB上的所有处理器遵循系统控 制芯片组。相反,所要求的主题便于包括联机增加、删1^^替换独立模块 的动态再配置,以便支持系统的动态分区、互连(链路)再配置、存储器 RAS,从而允许没有OS干预的迁移和镜^f象、动态存储器再交错、CPU和套 接字迁移,并支持跨分区的全局共享存储器。为了便于联机增加或删除, 固件能停止(quiesce)和激活(de-quiesce)相关域,使得以对固件上的软件 层实质上像是原子搡作的方式更新许多系统资源、比如路由选择表和地址 译码器。所要求的主^K更于利用运行系统和/或系衾O艮务处理器进行的动态 配置的操作。运行系统已经由2002年的申请记录"在基于Itanium 结构的 系统上的节点热插拔"所提出。在一个实施例中,运行系统包含系统资源,系统资源在新元素加入系 统/域中时已经可操作,或者当元素从系统/域中移除时系统资源保留可操 作性。定义在一个实施例中,停止状态是除了由固件和/或服务系统处理器生成的 协议事务处理以外,整个系统或其子集中都没有协议事务处理的状态。在一个实施例中,停止是由固件或系乡划l务处理器做出的一组动作, 以保证该整个系统或其子集达到停止。在一个实施例中,模块可以包舍多个CPU、交叉开关、存储器和存储 控制器、IO集线器或前面的任何组合。在这个实施例中,前面模块的组合 可以基于特定平台配置。在一个实施例中,点对点结构是由英特尔公司的公共系乡緣口 (CSI) 定义的,并且支持分层协议方案。图1说明了基础网络的高速緩存一致性 协议的抽象视图的示例。高速緩存一致性协议的一个示例在2004年提交的 未决申请P18890中描述。如前所逸所要求的主题便于至少部分基于能够停止和激活相关域的 固件的联机增加或删除,使得以对固件上的软件层实质上像是原子操作的 方式可以更新许多系统资源,比如路由选择表和地址译码器。以下几段将描述用平台相关配置或系乡Aa务处理器对IA32和Itanium处理器的停止和激 活的若干例子。在一个实施例中,固件保证单个停止搡作在任何时候至多在一个城内 部进行。在另一个实施例中,多个停止搡作在具有多个域的系统中是可允 许的。例如,停止4斜乍由特定内核(带内)或SSP ((带外)启动。SSP能 够通过它的非CSI网络控制该停止或者能够指定一个内核,该内核遵循带 内流程。-对于多分区系统,固件可以选^^停止每个分区(子域)并在每个分 区(子域)被停止后宣布停止,或通过对IOH作用域寄存器和相关数据结 构适当编程来停止作为皿的域。-在进行停止操作时(在IA-32平台中),不允许使用锁。例如,这 可以用首先通过SMI搡作将域中所有处理器带入SMM来保证。 使用系乡W良务处理器(SSP)停止/激活SSP可以用来代替前述带内流程。SSP可以使用带外总线如SM总线和 JTAG,以便对处理器和IOH寄存器编程并检查它们的状态。然后该流程以 类似于前面所述流程的方式进行,除了由"启动内核"执行的功能现在由 SSP执行。或者,SSP可向启动内核发送PMI/SMI,然后完4r^l负带内管理 流程来实现停止/激活。例如,图1是一个实施例使用的协议结构。该结构描述耦合到网络结 构的多个高速緩存代理和本地代理。例如,该网络结构结合分层协议方案 并可以包含下列任意一个或全部链路层、物理层、协议层、路由层、传 输层。该结构便于将消息从一种协议(本地或高速緩#^理)传输到点到 点网络的另一种协议。 一方面,该图描述了勤出网络的高速缓存一致性协 议的抽象3见图。图2说明实施例使用的联机增加资源的方法的流程图。该图描述联机 增加资源的流程的方法,该方法可由带内固件(运行在CPU上的固件)或 系纟^J良务处理器(SSP)或二者的结合来执行。在这个实施例中,增加的联 机资源是一个处理器节点,有或没有其它实体。起初,为联机增加处理器节点而执行物理和逻辑的建立。例如,SSP和/或RS固件知道平台的拓朴结构和处理器节点、OL_A将连接到的CSI 链路。在一个实施例中,它为〇L—A正连接到的一个或多个节点上存在的 每个CSI实体在RS上建立适当的关于如下信息(节点ID,代理类型和交叉 开关端口号}的4连^各控制器。同样地,它也为与此类CSI链;^相关联的RS 上的一个或多个配置实体编程,以便在链路初始化完成时,向RS上的一个 或多个处理器实体生成PMI/SMI中断。在一个实施例中,SMI是系统管理中断(IA32)并且PMI:平台管理中 断(等同IPF)。在一个实施例中,其中OL-A节点是RS的一部分并已经具有活动链 路,不执行PMI/SMI中断的供给(arming)。例如,这种情况出Sjyt当处 理器实体4皮逻辑上从一个分区中移除并加入到另 一个分区时。接着,通过物理方式或通过SSP将处理器节点插入,其中SSP允许将 已存在节点包括到OS分区作为新处理器节点(01^A节点)。如果涉及物 理插入,则该插入触发在OI^A节点上的通电复位序列,并启动OI^A上 的带外信号(SM总线、JTAG等等),就此,SSP能够访问OL_A上的控 制状态寄存器(CSR)资源。在一个实施例中,为每个链路定义CSR。例如,它映射链路端口状态 和链路初始化进程。可由系统管理通道或带内固件查询CSR,以验证与链 路状态有关的各种情况链路连接到远程组件、检测的空闲迁徙(idle他)、 检测的空闲迁徙确认、链路初始化状态、启动CSI 4泉路初始化和帧序列等 等。在一个实施例中,可通过构造空间访问CSR。如果存在SSP,则它为加入RS的每个现场可置换单元(FRU)上存在 的每个CSI实体用三元组{节点ID ,代理类型和交叉开关端口号}建立〇L_A 的链4^空制器。在没有SSP的情况下,OL-A上的固件(iU敫码)执行该功 能。OI^A上的固件或〇L_A内的配置代理可以读取一些平台信号或联接插 脚以导出它们自己的节点ID信息。该流程进行到下一个模块204,启动RS和要加入节点、01^A之间的 CSI^1路。例如,将在以下几个段落讨论启动该链路的详细信息。.SSP或RS上的固件向链路控制器发布命令以执行物理和链路层的初 始化以及链路/协议层参数的交换。在成功的链路初始化结束,链路各侧锁 存关于链路另一端上存在的CSI实体信息,即,三元组(节点ID,代理类型 和交叉开关端口号}。如果该OI^A已经是系统的一部分并且4^^各是激活的,将不执行这一步。'RS上一个或多个处理器实体接收PME/SMI以识别OL_A事件。可 能有一些在OL_A节点内不同CSI实体之间的CSI链路也需要被初始化。 当所有预期的CSI链路可操作时,在RS上的固件执4亍继续进行OL—A的结 合。在多分区RS中,接收PMT/SMI中断的RS上的固件执行知道将OL_A 结合到的分区,如果必要的话,并将PMI/SMI指示传递给正确分区上的固 件执行。可通过写入生成PMI/SMI的目标上的CSR来通知这种指示,或使 用平台资源、4吏用SSP来通知。由于OL—A事件PMI/SMI中断生成未发生,其中OL_A节点是RS的 一部分并已经有活动4连J各(例如路由经过OI^A) 。 OL^A可以如上所述向 RS通知PMI/SMI0就此,RS可以访问〇L_A的CSR资源。 该步骤是固件和平台实iJli目关的。系统接口可以提供一种机制,通 过该机制OL_A组件^皮设置为等候RS唤醒的停止状态。可以通过使用由 OL_A在复位取消声明读取的启动模式指令提供这样的指示,或在链路层参 数交换期间使用系统/套接层#来提供,或通过SSP设置OL一A的配置代 理的CSR值来提供。SSP和/或RS上的固件执行合作设立RS和OL_A组件上的路由选择 表、地址译码器和其它CSI结构。在该编程的结尾,OL^A可以访问RS上 全部/有限的资源。可以将固件设计成保护^^共资源如互连结构使之免于 OL_A错误地访问,直到该〇L_A組件^皮测试成功。该流程进4亍到下一个模块206,该模块设置到固件的路径。例如,将在 以下几个段落讨论设置通向固件的路径的详细信息。 每个处理器内核都需要通向固件实体的^^^。如果该OL^A联合体具有固件实体,则可以使用该固件实体。如果该OL—A节点连接到RS上的 固件实体,则那个固件实体能由该OI^A使用。如果这两个选择都不可用, 那么来自01^A的固件访问可以路由经过RS上的节点,其中该节点担当通 向固件实体的管道。在这种情况下,SSP或RS上的固件在OI^A节点上建 立地址译码器和路由选择表以路由固件访问。
SSP或RS中的固件执行写入OL_A上的实iM目关CSR,以将其从停 止状态释放,如果该OI^A等待这样的信号。它们也可以提供平台资源中的 一些配置值,比如通过OL—A限制平台发现的范围的热添加指示。该流程进行到下一个模块208,该模块允许要增加的新节点、OLA进 行自测试并执行初始化。例如,将在以下几个段落讨论进行自测试和初始 化的详细信息。OL—A上的每个处理器内核都尝试成为节点启动捆绑处理器(NBSP)。 在一个可能的实施例中,使用简单的竟赛来设置预定配置寄存器标记可以 决定获胜者。-在一些结构配置中,在NBSP上运行的固件同样初始化并启动存储器 桥或存储控制器的一些功能。在OL^A节点上,如果存在,该NBSP初始 化并测试存储器。^f吏用配置寄存器或其它实现相关平台资源,通过SSP/RS 上的固件将尺寸和存储器间隙信息传达给OI^A。 完成需要暂时^ft器的附加内核初始化和测试。OL—A模式上的固 件和RS上的固件使用IPI或实现相关平台资源相互通信。如果OI^A节点 没有^i也务賭器,它的^i者需求可以由RS上的务賭器满足。当OX^A节点 还不是RS相干域的一部分时,将这种存储器非相干地映射到RS和OL—A。 非相干访问同样防止OL—A错误地访问RS。如果期望OL_A引导独立的〇S,那么OL_A节点有它自己的存储器, 并且RS上的固件执行和OL_A之间的配合不可用。该流进行到下一个模块210,该模块向RS上的固件执行指示OL_A已 准备好加入一个或多个分区。例如,将在以下几个段落讨论详细信息。 如果OI^A期望加入已存在的OS分区,则〇L_A上的固件执行向 RS上的固件执行发送指示。任何一端的固件执行都以实ijy目关方式交换信息。RS上的固件知道OL—A上处理器、由OL_A增加的存储器和I/O集线 器资源的健康状况。 如果OI^A导致RS内的任何分区(或者可选的,整个RS)的路由 选择表的变化,则固件执行停止所有受影响的CSI实体的搡作,更新路由选 择表,然后唤醒已停止的CSI实体。同样逸〇L_A的路由选择表是可根据 需要编程/重新编程的。同样,参考14.3.5节,"OLJ事件期间对于停止的 需要"了解详情。如果OL^A期望形成一个新分区,如果必要的话将其唤醒,并且OI^A上的固件进行51导其操作系统。剩下的步骤描述OL_A将要加入一个已存在的分区的方案。 .OL—A和RS更新它们的系统地址映射和地址译码器以合并新资源。RS可能需要修正OS分区的各种CSI实体中的有关列表(监听、中断广播、加锁等等)。如果不是以原子或一致方式修正这些列表则可能发生协议违例。
RS上的固件执行和OL_A处理器节点使用实现特定机制相互作用, 并允许相互间相关性通信。
01^A节点上的固件执行通知RS上的固件执行关于引导进乾然后 循环等待分区的OS的唤醒。该流程进行到下一个模块212,该模块向RS上的OS指示OL_A节点 已准备好加入一个或多个分区例如,详细信息将在以下几个段落讨论。
RS上的固件执行建立适当的ACPI表,并使用ACPI机制向OS产生 中断,以通知资源的增加。如果资源正坤i^到多个OS分区,则该RS上的 固件将向多个分区发送中断。.OS使用ACPI方法/接口识别OL_A节点的资源。如果增加I/O集 线器、桥和装置,则操作系统将在I/O集线器上为新增加的资源加载适当的 设备驱动程序。如果增加了存储器,OS就可开始使用这些存储器。 操作系统唤醒OL_A节点上的处理器,并在这些处理器上执行OS 初始化步骤。在另一个实施例中,增加的联机资源仅是存储节点。在这个实施例中,该流程类似于关于图2的描绘。然而,它们的差异在以下几个卓臾落描述。 将存储节点通电,并且如果有的话,启用带外信号。SSP或OLA 存储节点内的配置代理用三元组(节点ID,代理类型和交叉开关端口号) 为增加到RS的FRU上存在的每个CSI实4本建立它的链膝控制器。 在链路/协议层初始化期间,RS从代理类型^t交换中识别存储器实 体的增力口。 〇L_A ##器实体的增加向RS上的固件执行产生PMI/SMI。 '如果OI^A导致RS的^^可分区中的路由选择表改变,则固件可能需 要执行停止在这些分区(或者可选的,整个RS)上的所有CSI实体的操作, 更新路由选择表,然后唤醒已停止的CSI实体。典型逸纯存储器实体是 叶节点,并且在无需停止的情况下,可以对RS的路由选择表进行修改。同 样,参考14.3.5节,"OL—*事件期间对于停止的需要"了解详情。.初始化 SSP/RS上的固件并测试OL—A节点上的^f诸器。 RS更新它的系统地址映射和地址译码器以合并新资源。在存储器实 体的目标地址译码器被建立用来寻址新加的存储器。
RS上的固件执行建立适当的ACPI表,并使用ACPI机制向操作系 统产生中断,以通知资源的增加。如果资源正^Ci/口到多个OS分区,贝,j RS 上的固件将向多个分区发送中断。.RS上的一个或多个OS将该存储器与一个或多个OS分区结合。 在另一个实施例中,增加的联机资源仅是1/0集线器节点。在这个实施 例中,该流程务似于关于图2的描绘。然而,它们的差异在以下几个^殳落描 述。
SSP或OL_A节点内的配置代理用三元組(节点ID,代理类型和交 叉开关端口号}为增加到RS的FRU上存在的每个CSI实体建立它的链4^空 制器。 在^l路/协议层初始化期间,RS从代理类型参数交换中识别I/O代理 实体的增加。
OL_AI/〇代理实体的增加向RS上的固件执行产生PM/SMI。 -如果〇1^_入改变1^内的4^f可分区的路由选择表,则固件执行停jb^该分区(或者可选的,整个RS)中的所有CSI实体的搡作,然后更新路由选择表o RS确定下游总线和装置所要求的MMI〇和I/O地址范围。它更新 它的系统地址映射和地址译码器以合并新资源。在〇L_A I/O代理实体的 目标地址译码器被建立用来寻址新增加的MMIO和I/O资源,并且在I/O 代理实体的源地址译码器被建立用来寻址RS存储器和处理器资源。 如果这样的实体是高速緩务氏理,那么各个CSI实体的用于监听的 相关列表被修改,以包括OL^AI/0代理实体。同样i^如果OI^A刻乍为 锁管理者,则初始化各个CSI实体上的适当的CSR。 然后唤醒已停止的CSI实体。 RS上的固件执行建立ACPI表,并使用ACPI机制向OS产生中断,以 通知资源的增加。如^iL在向多个操作系统分区增加资源,则RS上的固件 将向多个分区发送中断。
RS上的一个或多个OS识别OL_A事件,探测I/O集线器的I/O总 线下游,发现装置,给这些装置加载合适的设备驱动程序,然后将该装置与 一个或多个OS分区结合。图3说明一个实施例使用的联机删除资源的方法的流程图。在本讨论 中,01^D是从RS上删掉的节点。在一个实施例中,依据系统配置,OL_D 节点可以是a)有存储器和I/O的一个或多个处理器,b)有存储器的一个或 多个处理器,c)仅为一个或多个处理器,d)仅为I/O集线器,e)仅为存储器。 以下几个段落用一系列步骤解释删除过程。在这个图中,描述处理器节点 的删除。如模块302所逸请求移除特定的处理器节点OI^D。例如,在一个实 施例中,通过系统管理通道向OS发出该请求。接着,描述对于OL—D节点的一个或多个脱机处理器的动作,如模块 304所描述的。例如,在以下几个^爻落描述其信息。以下动作由不同的处理器(分别识别停止的处理器(QP)和RS的动 作)拟旦0-(QP)操作系统将应用、中断远离QP处理器并停ob^ QP中的调度工作。它同样禁止在QP上的中断。
(QP)通过移除TLB来停止预取和推测性的访问。停止预取避免由 于引用因地址译码器变化可能映射出界的^i者器而? 1起的错误。-(QP) OS使用ACPI机制以通知不再使用该QP节点,并且ACPI 机制以实现相关方式进入固件层。然后固件层做以下工作-在IA-32系乾修正适当的相关列表以保证QP不是随后VLW、锁和 广播IPI事件的目标。-固件保证^^可运行中的中断事务对于QP是未决的。该步骤是实Sli目 关的,并可能涉及为未决的中断^C询系统中的各个1/0集线器。读IOH 导致从IOH释放未完成的中断。QP上的固件执行必须向它自己发送PMI IPI,并^i正收到该PMI。 这保证了 4^f可早先的中断和IPI被传达给QP内 核。如果新中断是未决的,则固件返回OS,并且期望OS Jl^从步骤2开 始的一系列动作。-在Itanium处理器,使用?]」、_预取_可視过程,固件停止对其存储区域 预取数据,其中存储区域在写回访问,并具有受限制推测(WBL)存储属 性。-固件执行处理器和平台高速緩冲存储器的刷新,并调用必要的指令以 刷新写入聚合(WC)緩存器。-从固件空间中执行以避免依赖RS ^i者器。-在Itanium处理器,调用PAL停止过程,该过程具有选择用PMI传送 类型将IPI写到RS。在IA-32上用传送类型SME IPI向RS产生IPI, l^r 是必要的步骤以达到低功l毛系统睡眠状态。换句话it QP上的固件可为RS 上的OS创建^L则的向量中断(例如SCI),并期望RS上的OS进入固件以 执行下面关于模块306的功能。-此阶^^r,出现任何MCA/INrr/PMI/SMI事件都不能唤醒内核。只 有复位事件可以唤醒这些睡眠内核。接着,将描述从各个相关列表中删除QP,如模块306所述。例如,在 以下几个^落描述其信息。
(RS)RS上的固件在收到上述PMI/SMIIPI时做下述工作-执行停止以保证完成所有运行中的事务,比如监听QP。-从RS上各个相关列表中移除QP。-如果有的话,从目录/监听过滤结构中移除QP。-改变QP的地址译码器,使得固件和数据访问都不能离开QP节点。-从分区的固件数据结构中移除QP参考。RS上的MAC不再映射到QP。-如果QP节点从系统中被物理移除,则固件也^W施移除交叉开关。 移除交叉开关涉及对多个CSI节点上的路由选择表的修改,以绕过QP节点。 参考14.7节,用于完成这些修改的多种选择的"共享互连多分区管理"。进 一步池在具有石更分区的系统中,如果要禁止从OU3到RS的链路,那么必 须更新路由选^r表。在此情况下,固件可能需要执行停止在RS上的受影响 的CSI实体的操作,更新路由选择表,然后唤醒已停止的CSI实体。同样,参 考14.3.5节,"OLJ事件期间对于停止的需要"了解详情。-唤醒RS上已停止的CSI实体。-使用ACPI机制(例如,使用SCI中断)通知RS上的OS成功完成删除。 接着,描述OI^D节点可被移除的信号的生成,如模块308所述。例如,在以下几个段落描述其信息。-:(RS) OS从固件接收指示OL—D完成的中断。如果该行为由它^,则它可以向SSP/系统管理应用提供完成指示。如果要求物理移除OI^D节点,则OS可能运行一些ACPI方法来提供可见指示,例如,在移除槽上开启发光二极管。在先前描述的实施例中,处理器节点被移除。在另一个实施例中,被 移除的联机资源仅是存储节点。在以下几个^殳落论述其他细节。 〇S将使用移除的存储器的应用和设备驱动程序移到其它存储段。 OS将可调页存储器刷新到磁盘,或者如果有足够的空闲存储器,则将 OL_D存储内容复制到另 一个存储区域。有一些情况需要以下动作-如果移除的^f诸器被分配给直接^f诸器访问(DMA)设备,那么必须 停止设备驱动程序或将其分配给新的緩存器。-如果OS设计允许,OS可以向其它联机存储器重新映射核心存储区,所述核心存储区^充机的务賭器的分区。-如果交叉存^#储器并且存储器交叉存耳3 4立度(交叉csi节点)小于OS页,那么来自与OLD节点共享相同OS页的多个CSI节点的^il器需要 被调页到磁盘。在极端的情况,在分区中所有可调页存储器都需要被调页 到磁盘。-以物理寻址模式(诸如SAL注册的OS_MCA、 OSJNIT进入点)对于os访问的区域需要与固件的特定交互。。以物理寻址模式(仅仅复制到一个不同的物理地址是不行的)访问固件存储区域,存在對以的需要。
OS使用移除TLB停止对移除的存储器的预料口推测性访问,然后 将控制转移到固件层。.在Itanium处理器,使用PALj页^f、可视过程,固件停止对它的脱机 ^^诸器的预耳又。 固件针对地址范围刷新处理器和平台高速緩冲存储器。 如果I/0代理实体有高速緩冲存储器,则固件^M"施释放这些高 速緩冲存储器并使存储器更新。 固件执行停止操作以保证完成在转行中的对移除资源的事务处理。 在松M时内也可以工作。不执行路由通过功能的纯^f诸节点是叶节点,因 此,如果RS上路由选择表的变化仅仅是被删除存储器的条目的移除,则可 以避免停止操作。 然后固件改变CSI实体上的地址译码器,以避免参考已移除的资源。 os将在它的地址空间看到"洞",并决不能在将来产生对脱机存储器的请求。 然后固件释放^[^f可已停止的RS上CSI实体,以恢复它们的作用。 固件使用ACPI机制通知OS完成移除,OS会提供平台指令、例如 通知SSP或点亮LED等等。 如果存储节点由多OS分区共享,则该步骤在所有分区进4亍。 在先前描述的实施例中,仅移P余存储节点。在另一个实施例中,移除 的资源是I/0集线器节点。在以下几个段落论述它们的细节。OS ^^^施以停用移除的资源,然后请求固件修改由固件控制的平台 资源。固件移除对CSI结构中的资源、如地址译码器、相关列表等的参考,然后将完成通知OS。如下描述这些步骤: 搡作系统通知设备驱动程序关于I/O装置被移除。如果不能关闭设 备驱动程序,那么它将拒绝请求,并且OS将不会继续进行移除。这样的拒 绝可能影响从系统中移除其它资源。例如,如果已经为DMA操作为设备驱 动程序分配了存4者緩存器,并且设备驱动程序不能释放这样的緩存器,那么 与该緩存器有关的务賭节点也不能被移除。 如果停止设备驱动程序,则OS收回与它们的代码和数据区iii4目关 的存储器。然后OS使用ACPI机制将控制交给固件层以执行如下动作-如果1/0代理实体有高速緩冲存储器,则固件采取步骤释放该高速緩 冲^^诸器并4吏务賭器更新。-固件执行停止搡作并保证完成运行中的对移除资源的事务处理。 -在IA-32系乡光如果移除的I/0集线器起锁管理者的作用,则指定另一 个锁管理者,在该新锁管理者上建立锁范围寄存器,并修正RS上的各个CSI 实体上的锁定目标寄存器。如果移除的I/0集线器为中断传送(有目的地 缩写的物理目的地或以平面/簇寻址方式的逻辑目的地)保持广播列表,则 要求类似的步骤,并且必须将这类广4番功能迁移到另一个I/0集线器。 -修正RS的CSI实体上的地址译码器,以避免参考已移除的资源。 -从相关列表比如监听、目录、监听过滤等中删除作为目标的I/0集线 器CSI实体。-然后固件释放^f可已停止的RS上CSI实体,以恢复它们的搡作。 -固件4吏用ACPI机制通知OS完成移除。-如果该1/〇节点是多OS分区(比如多OS分区共享的一个IOH)的 一部分,则在所有分区进行这些步骤。图4描述有一或多个处理器的点对点系统。所要求的主题包含几个实 施例, 一个是具有一个处理器的406, 一个是具有两个处理器(P)的402, 一个是具有四个处理器(p)的404。 在实施例402和404中,每个处理器 都耦合到存储器(M),并且通过网络结构连接到每个处理器,网络结构可 包含下列任何一个或所有链路层、协议层、路由层、传输层和物理层。 该结构便于点对点网络从一种协议(本地或高速緩存代理)向另一种协议传输消息。如先前描述,网络结构系统支持结合图1 - 3描述的任何实施例。对于实施例406,单处理器P通过对应于分层协议方案的网络结构链路 耦合到图形和存储器控制,描述为IO+M+F。图形和存储器控制耦合到存储 器,并能够通过PCI Express链皿收和传送。同样逸图形和存储器控制 耦合到ICH。此外,ICH通过LPC总线耦合到固件集线器(FWH)。同样, 对于不同的单处理器实施例,处理器有外部网络结构链路。处理器可以有 多个内核,这些内核有单独或共享的高速緩冲^f诸器,每个内核耦合到Xbar 路由器和非路由全局链落接口 。因仏该外部网络结构链路耦合到Xbar路 由器和非3各由全局4连44^口。虽然已经参考特定的实施例描述了所要求的主题,但是该描述不意味 着局PPJ也解释。参考所要求主题的描述,所公开的实施例的各种修改以及 所要求主题的替换实施例,对本领域技术人员而言是显而易见的。故预计, 在不脱离如所附权利要求中定义的所要求主题的精神或范围下,可以进行 这样的修改。
权利要求
1. 一种联机增加独立资源的方法,包含为独立资源建立物理和逻辑信息;在正在运行的系统(RS)和所述独立资源之间定义串行链路;设置通向固件的路径;在所述独立资源上运行自测试和初始化;向所述RS上的固件执行指示所述独立资源准备好加入至少一个分区;和向所述RS上的操作系统(OS)指示所述独立资源准备好加入至少一个分区。
2. 如权利要求l所述的方法,其中所述独立资源是处理器结点、纯存储结点或i/o集线器结点。
3. —种联机删除处理器结点的方法,包含 要求移除处理器结点;对于要求移除的所述处理器结点,从脱机的处理器和存储器中移走 应用程序;从各个相关列表中移除要求移除的所述处理器结点;和 产生要求移除的所述处理器结点确实^皮移除的信号。
4. 如权利要求3所述的方法,其中对于要求移除的所述处理器结点, 由操作系统(OS)执行从脱机的处理器和存储器中移走所述应用程序。
5. 如权利要求3所述的方法,其中所述处理器结点可能包含IA-32或 Itanium⑧处理器。
6. —种联机删除存储结点的方法,包含 迁移使用存储结点的应用程序和设备驱动程序;和 刷新可分页存储器到磁盘,或者如果有足够的空闲存储器,则将待移除的所述存储结点的存储内容拷贝到存储器的另 一 区域即被移到其它存 储段。
7. 如权利要求6所述的方法,其中所述坤皮移除的存储结点来自分区。
8. —种联机删除存储结点的方法,包含 迁移使用存储结点的应用程序和设备驱动程序;刷新可分页存储器到磁盘,或者如果有足够的空闲存储器,则将待移除的 所述存储结点的存储内容拷贝到存储器的另 一 区域即^皮移到其它存储段;和如果移除的存储结点被分配给直接存储器访问(DMA)设备,则停 止设备驱动程序或将其分配给新的緩存器。
9. 如权利要求8所述的方法,其中所述移除的存储结点来自分区。
10. —种联机删除存储结点的方法,包含 迁移4吏用存储结点的应用程序和设备驱动程序; 刷新可分页存储器到磁盘,或者如果有足够的空闲存储器,则将待移除的所述^f诸结点的存储内容拷贝到存储器的另一区域即被移到其它存 储段;如果移除的存储结点被分配给直接存储器访问(DMA)设备,则停 止设备驱动程序或将其分配给新的緩存器;和固件针对移除的存储结点定义的地址范围刷新处理器和多个平台高 速緩冲存储器。
11. 如权利要求10所述的方法,其中移除的存储结点来自分区。
全文摘要
描述一种包括联机增加、删除和替换独立模块的动态再配置,以便支持系统的动态分区、互连(链路)再配置、存储器RAS,从而允许没有OS干预的迁移和镜像、动态存储器再交错、CPU和套接字迁移,并支持跨分区的全局共享存储器。为了便于联机增加或删除,固件能停止和激活相关域,使得以对固件上的软件层实质上像是原子操作的方式更新许多系统资源、比如路由选择表和地址译码器。
文档编号H04L29/06GK101266560SQ20081009016
公开日2008年9月17日 申请日期2005年12月12日 优先权日2004年12月13日
发明者A·库马, A·瓦加斯, E·德拉诺, I·肖伊纳斯, J·亚亚辛哈, M·阿亚 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1