CN101263457A - 用于替换故障物理处理器的方法和装置 - Google Patents

用于替换故障物理处理器的方法和装置 Download PDF

Info

Publication number
CN101263457A
CN101263457A CNA2006800332509A CN200680033250A CN101263457A CN 101263457 A CN101263457 A CN 101263457A CN A2006800332509 A CNA2006800332509 A CN A2006800332509A CN 200680033250 A CN200680033250 A CN 200680033250A CN 101263457 A CN101263457 A CN 101263457A
Authority
CN
China
Prior art keywords
physical processor
processor
pond
private partition
partition
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2006800332509A
Other languages
English (en)
Other versions
CN100580631C (zh
Inventor
W·J·阿姆斯特朗
N·纳亚尔
G·R·里卡德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101263457A publication Critical patent/CN101263457A/zh
Application granted granted Critical
Publication of CN100580631C publication Critical patent/CN100580631C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/203Failover techniques using migration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2025Failover techniques using centralised failover control functionality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2035Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant without idle spare hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Hardware Redundancy (AREA)

Abstract

替换支持多个逻辑分区的计算机内的故障物理处理器,其中所述逻辑分区包括专用分区和共享处理器分区,由分配有物理处理器的虚拟处理器来支持所述专用分区,并且由虚拟处理器池来支持所述共享处理器分区。所述虚拟处理器池分配有物理处理器。各实施例通常通过以下步骤来运行:为所述专用分区和所述虚拟处理器池分配优先级;检测故障物理处理器的检错停机;检索所述故障物理处理器的状态;由系统管理程序使用被分配给专用分区或池的替代物理处理器来替换所述故障物理处理器,该专用分区或池具有所述专用分区和池的优先级中的最低优先级;以及将所检索的所述故障物理处理器的状态指定为所述替代物理处理器的状态。

Description

用于替换故障物理处理器的方法和装置
技术领域
本发明的领域是数据处理,更具体地说,是用于替换支持多个逻辑分区的计算机内的故障物理处理器的方法、装置和产品。
背景技术
1948年开发的EDVAC计算机系统通常被认为是计算机时代的开始。从此,计算机系统演变为极度复杂的设备。今天的计算机比诸如EDVAC之类的早期系统要复杂的多。计算机系统通常包括硬件组件、软件组件、应用程序、操作系统、处理器、总线、存储器、输入/输出设备等的组合。由于半导体处理和计算机体系结构的发展推动了计算机的性能不断提高,因此,更为复杂的计算机软件已经演变为利用更高的硬件性能,从而导致如今的计算机系统比仅仅几年之前的计算机系统要强大得多。
其中一个发展的领域是在分配有自己的资源的分区内并行处理多个执行线程以及运行单独的操作系统。通过将计算机硬件和软件转变为高度并行、逻辑分区的模型,使得仅仅几年之前几乎不存在的高系统可用性成为可能。一种维护高可用性的机制允许利用未使用的处理器对预测要发生故障的处理器进行动态的运行时替换(假定故障物理处理器能够继续工作,直到完成替换过程)。另一种用于高可用性的机制维护完整的处理器状态信息,以便即使在发生灾难性的处理器故障(例如,检错停机(checkstop))时,处理器所执行的工作也可以在替换物理处理器上继续。替换物理处理器在这些恢复机制中的重要性将是显而易见的。如果未使用的处理器可用,便可了解从何处获取这些替换。但是,未使用的处理器通常很不经济并且很昂贵,因此在大多数系统上很少见。当处理器检错停机并且没有未使用的处理器可用时,系统具有两种选择:它可以终止故障处理器被分配到其的分区或池,或者下层系统管理程序可以运行故障处理器被分配到其的虚拟处理器分区或虚拟处理器池,仿佛所述分区或池具有的处理器多于物理可用的处理器一样。这两种情况都是不希望出现的,在前一种情况下,将停止使用分区,而在后一种情况下,分区未以期望的性能级别运行。当然,如果所使用的处理器检错停机,系统上的某些分区必定受到影响,但是基于随机的故障物理处理器凭运气选择受影响的分区并不是最佳的过程。
发明内容
本发明披露了用于替换支持多个逻辑分区的计算机内的故障物理处理器的方法、装置和产品,其中所述逻辑分区包括专用分区和共享处理器分区,由分配有物理处理器的虚拟处理器来支持所述专用分区,并且由虚拟处理器池来支持所述共享处理器分区。所述虚拟处理器池分配有物理处理器。所述方法、装置和产品通常通过以下步骤来运行:为所述专用分区和所述虚拟处理器池分配优先级;检测故障物理处理器的检错停机;检索所述故障物理处理器的状态;由系统管理程序使用被分配给专用分区或池的替代物理处理器来替换所述故障物理处理器,该专用分区或池具有所述专用分区和池的优先级中的最低优先级;以及将所检索的所述故障物理处理器的状态指定为所述替代物理处理器的状态。
从以下对附图中所示的本发明的示例性实施例的更详细的描述,本发明的上述以及其他目标、特征和优点将是显而易见的,在附图中,相同的标号通常表示本发明的示例性实施例的相同部分。
附图说明
图1是根据本发明的实施例的包括在替换故障物理处理器中使用的示例性计算机的自动计算机器的方块图;
图2是根据本发明的实施例的用于替换故障物理处理器的示例性系统的功能方块图;
图3是示出了根据本发明的实施例的替换故障物理处理器的示例性方法的流程图;
图4是示出了根据本发明的实施例的替换故障物理处理器的进一步示例性方法的流程图;
图5是示出了根据本发明的实施例的替换故障物理处理器的进一步示例性方法的流程图;
图6是示出了根据本发明的实施例的替换故障物理处理器的进一步示例性方法的流程图;以及
图7是示出了根据本发明的实施例的替换故障物理处理器的进一步示例性方法的流程图。
具体实施方式
将参考附图从图1开始描述根据本发明的实施例的用于替换故障物理处理器的示例性方法、装置和产品。根据本发明的实施例替换故障物理处理器在计算机中实现,也就是说,在自动计算机器中实现。因此,为了进一步说明,图1是根据本发明的实施例的包括在替换故障物理处理器中使用的示例性计算机(152)的自动计算机器的方块图。图1中的计算机(152)包括多个物理处理器(156)以及通过系统总线(160)与物理处理器(156)及计算机的其他组件相连的随机存取存储器(168)(‘RAM’)。
RAM(168)中存储了两个应用程序(158、210),所述应用程序是用于用户级数据处理的计算机程序指令。每个应用程序都可以在单独的逻辑分区中运行。RAM(168)中还存储了两个逻辑分区(104、208),每个逻辑分区都具有自己的操作系统(154、206)。此处的两个分区的描述是任意的,只是为了说明根据本发明的实施例的用于替换故障处理器的典型系统包含多个此类分区。逻辑分区是作为单独的“虚拟”计算机组织和运行的计算机资源的子集。同一计算机上的各个逻辑分区相互独立地运行。每个逻辑分区都运行其自己的操作系统和自己的应用程序,并且每个逻辑分区都分配有运行所需的全部资源(包括处理器能力、存储器以及I/O资源),仿佛其是独立的计算机。逻辑分区可以实现为由分配有物理处理器的虚拟处理器支持的专用分区。逻辑分区还可以实现为由虚拟处理器池(其中每个池分配有物理处理器)支持的共享处理器分区。在本说明书中,将逻辑分区称为“逻辑分区”、“分区”或“LPAR”。
RAM(168)中还存储有多个虚拟处理器(122、202、204)、数据结构以及表示将物理处理器资源分配给逻辑分区的计算机程序指令。未共用的虚拟处理器(122)通常具有直接通过虚拟处理器来分配给逻辑分区的物理处理器,而共用的虚拟处理器(202、204)表示被分配给池(153)的物理处理器的处理能力。
RAM(168)中存储有系统管理程序(184),后者是用于管理逻辑分区(“LPAR”)的计算机程序指令。系统管理程序(184)管理如何将诸如存储器资源和处理资源之类的物理资源分配给LPAR、控制可以从LPAR内部访问的物理存储单元,以及控制对I/O存储器空间的访问。此外,系统管理程序(184)根据物理处理器来调度虚拟处理器并管理如何将虚拟处理器分配给LPAR。改进了此示例中的系统管理程序(184)以便通过以下操作来根据本发明的实施例替换支持多个逻辑分区的计算机内的故障物理处理器:为专用分区和虚拟处理器池分配优先级、检测故障物理处理器的检错停机、检索所述故障物理处理器的状态、使用被分配给具有最低优先级的专用分区或池的替代物理处理器来替换所述故障物理处理器,以及将所检索的所述故障物理处理器的状态指定为所述替代物理处理器的状态。
RAM(168)中还存储有位于逻辑处理器(104、208)内部的操作系统(154、206)。在根据本发明的实施例替换故障处理器的计算机逻辑分区中使用的操作系统包括UNIXTM、LinuxTM、Microsoft XPTM、AIXTM、IBM的i5/OSTM,以及本领域的技术人员将想到的其他操作系统。图1的示例中的系统管理程序(184)、虚拟处理器(122、202、204)、操作系统(154、206)、LPAR(104、208)以及应用程序(158、210)示为在RAM(168)中,但是此类软件的许多组件通常还存储在非易失性存储器(166)中。
图1中的计算机(152)包括通过系统总线(160)与物理处理器(156)和计算机(152)的其他组件相连的非易失性计算机存储器(166)。非易失性计算机存储器(166)可以实现为硬盘驱动器(170)、光盘驱动器(172)、电可擦写可编程只读存储器空间(所谓的“EEPROM”或“闪速”存储器)(174)、RAM驱动器(未示出),或本领域的技术人员可想到的任何其他类型的计算机存储器。
图1中的示例计算机包括一个或多个输入/输出接口适配器(178)。计算机中的输入/输出接口适配器通过例如软件驱动器和计算机硬件实现面向用户的输入/输出,以便控制到诸如计算机显示屏之类的显示设备(180)的输出,以及来自诸如键盘和鼠标之类的输入设备(181)的用户输入。
图1中的示例性计算机(152)包括用于实现与其他计算机(182)的数据通信(184)的通信适配器(167)。此类数据通信可以通过RS-232连接、通过诸如USB之类的外部总线、通过诸如IP网络之类的数据通信网络,以及使用本领域的技术人员将想到的其他方式来串行地执行。通信适配器实现硬件级别的数据通信,通过所述数据通信,一台计算机直接地或通过网络将数据通信发送到另一台计算机。根据本发明的实施例的可用于确定目的地可用性的通信适配器的示例包括用于有线拨号通信的调制解调器、用于有线网络通信的以太网(IEEE 802.3)适配器,以及用于无线网络通信的802.11b适配器。
图2是根据本发明的实施例的用于替换故障物理处理器的示例性系统的功能方块图。图2中的系统包括系统管理程序(184),后者是管理LPAR的系统软件层。改进了此示例中的系统管理程序(184)以通过以下操作来根据本发明的实施例替换支持多个逻辑分区的计算机内的故障物理处理器:为专用分区和虚拟处理器池分配优先级、检测故障物理处理器的检错停机、检索所述故障物理处理器的状态、使用被分配给具有最低优先级的专用分区或池的替代物理处理器来替换所述故障物理处理器,以及将所检索的所述故障物理处理器的状态指定为所述替代物理处理器的状态。
图2还包括LPAR(103、104、105)。每个LPAR(103、104、105)内都运行有操作系统(154、155、157),并且每个操作系统可以是不同的。例如,具有三个LPAR的系统可以同时在一个LPAR中运行LinuxTM,在一个LPAR中运行IBM的AIXTM,并在另一个系统中运行IBM的i5/OSTM
图2还包括多个物理处理器(156、158、160、162、164、166、168)。物理处理器(156、158)通过虚拟处理器(121、123)被独占地分配给LPAR(103)。将一个或多个物理处理器以此方式独占地分配到其的LPAR在本说明书中被称为“专用分区”或“专用LPAR”。
在此示例中,物理处理器(160、162、164、166、168)被分配给池(153),以便LPAR(104、105)通过池(153)的虚拟处理器(124、126、128。130、132、134)共享物理处理器(160、162、164、166、168)的处理能力。LPAR(104、105)通过共用的虚拟处理器间接地共享物理处理器,每个虚拟处理器表示由系统管理程序(184)分配给每个此类LPAR(104、105)的物理处理器的全部或部分处理能力。此类通过共用的虚拟处理器间接地共享物理处理器的LPAR在本说明书中称为“共享处理器分区”或“共享处理器LPAR”。
在图2的示例中,在物理处理器、虚拟处理器、池以及LPAR之间绘制的箭头代表被分配给LPAR、虚拟处理器以及池的处理能力。物理处理器只能作为一个整体处理器进行分配,在每个将物理处理器与虚拟处理器(121、123)或池(153)进行链接的箭头中用“1.0”表示。每个被分配给专用LPAR(103)的虚拟处理器(121、123)表示1.0单位的物理处理器的处理能力。五个物理处理器(160、162、164、166、168)的全部处理能力通过池(153)被分配给共享处理器LPAR(104、105),其中将3.75单位的物理处理器的处理能力分配给LPAR(104)以及将1.25单位的处理器的处理能力分配给LPAR(105)。
图2的系统内的物理处理器、虚拟处理器、LPAR以及虚拟处理器池的数量、布置和分配只是为了说明;它们并非对本发明进行限制。用于替换支持多个逻辑分区的计算机内的故障物理处理器的系统可以包括本领域的技术人员将想到的物理处理器、虚拟处理器、LPAR以及虚拟处理器池的任何数量、布置和分配。
为了进一步说明,图3是示出了根据本发明的实施例的替换故障物理处理器的示例性方法的流程图。图3中的方法在支持多个逻辑分区(103、104、105)的计算机中执行。所述逻辑分区包括专用分区(103)和共享处理器分区(104、105)。由分配有物理处理器(156)的虚拟处理器(121)支持专用分区。由虚拟处理器(123、124)池(153)支持共享处理器分区,并且所述池分配有物理处理器(160、162)。
图3的方法包括将优先级(310)分配(304)给专用分区(103)(优先级=1)和池(153)(优先级=2)。所述优先级赋值是按序排列的整数,其中最小的整数表示最高的优先级;1的优先级高于2,2的优先级高于3,依此类推。
可以通过使用控制台(未示出)实现向分区分配优先级。每个逻辑分区都可以具有连接到其的控制台,通过所述控制台,每个逻辑分区看起来像独立的计算机系统并像独立的计算机系统那样运行。所述控制台允许用户或系统管理员输入命令和查看逻辑分区的操作。“主”分区控制台允许用户和管理员查看和管理所有辅助分区的各个方面。“辅助”分区控制台仅允许用户或管理员访问其所连接的分区。
通过此类主控制台,可以创建和管理辅助分区,包括分配诸如处理器、虚拟处理器、存储器、I/O资源之类的资源。辅助分区的管理功能包括加电和断电操作以及初始程序加载。除了创建和管理辅助分区之外,通过此类主分区控制台的操作还可以包括建立虚拟处理器池和为是专用分区的辅助分区分配优先级以及为虚拟处理器池分配优先级。例如,为分区分配优先级还可以包括监视分区上的数据处理负载和根据所述负载分配优先级,优先级随负载的增加而增大。备选地,为分区分配优先级可以包括从用户处获取优先级、监视分区上的负载,以及根据所述负载和来自用户的评价分配优先级。
图3中的方法还包括检测(312)故障物理处理器(156)的检错停机。本说明书中所用的术语“检错停机”是足够严重的处理器操作错误,此错误本身或者连同其他错误一起使得替换处理器成为必要。物理处理器通常使用定向硬件中断来发信号通知处理器操作错误。可以通过将中断从物理处理器的处理器操作错误定向到系统管理程序的中断处理例程来检测检错停机。来自物理处理器的任何错误情况都可能造成或导致检错停机,其中包括例如本领域的技术人员将想到的存储器边界错误、操作码错误、协处理器段错误、存储器地址错误、算术或浮点错误、存储器对齐错误、机器检查异常等。检测检错停机可以包括将特定错误定义为单独足以使替换处理器成为必要。备选地,检测检错停机可以包括保持处理器操作错误的计数并当计数达到预定阈值时将检错停机标识为发生。
图3中的方法还包括检索(314)故障物理处理器的状态(316)。通过由系统管理程序从处理器直接读取处理器的寄存器的当前值并将处理器的寄存器的值临时存储在物理处理器外部的随机存取存储器中,可以检索(314)故障物理处理器的状态(316)。
图3中的方法还包括由系统管理程序(184)使用被分配给专用分区或池的替代物理处理器(160)替换(318)故障物理处理器(156),该专用分区或池具有专用分区和池的优先级中的最低优先级。在图3的示例中,替代处理器(160)被分配给优先级=2的池(153)。专用分区(103)的优先级=1。因此,池(153)是具有图3的示例中的专用分区和池的优先级中的最低优先级的专用分区或池,并且从被分配给池(153)的物理处理器中选择替代处理器。有两个物理处理器(160、162)被分配给池(153),其中任意一个都可以用作替代处理器。在此示例中,处理器(160)被选为替代处理器。
在图3的示例中,处理器(156)是通过虚拟处理器(121)被分配给专用LPAR(103)的故障物理处理器。在此示例中,通过将替代处理器(160)从池(153)重新分配(320)给虚拟处理器(121)来替换故障物理处理器。由系统管理程序对分区(103)完全透明地执行故障处理器的替换。在虚拟处理器(121)上分派执行线程的分区(103)的操作系统在不知道物理处理器(156)出现故障并被物理处理器(160)替换的情况下继续在虚拟处理器(121)上分派执行线程。
图3的方法还包括将所检索的故障物理处理器(156)的状态(316)指定(319)为替代物理处理器(160)的状态。所检索的故障物理处理器的状态包括在系统管理程序检测到故障处理器的检错停机时的故障物理处理器的寄存器的各个值。可以通过将检索的状态(316)存储在替代物理处理器(160)的寄存器中来将所检索的故障物理处理器(156)的状态(316)指定(319)为替代物理处理器(160)的状态。
为了进一步说明,图4是示出了根据本发明的实施例的用于替换故障物理处理器的进一步示例性方法的流程图。与图3中的方法相同,图4中的方法在支持多个逻辑分区(103、104、105、106、107、108)的计算机中执行。所述逻辑分区包括专用分区(103、104)和共享处理器分区(105、106、107、108)。由每个都分配有物理处理器(156、157、158、159)的虚拟处理器(121、123、125、127)支持所述专用分区。由虚拟处理器(124、126、128、130、132、134)的池(404、408)支持所述共享处理器分区,并且所述池分配有物理处理器,其中物理处理器(160、162、164)被分配给池(404),物理处理器(166)被分配给池(408)。图4的方法还与图3的方法的类似之处在于,图4中的方法包括为专用分区和虚拟处理器池分配(304)优先级、检测(312)分区的故障物理处理器的检错停机、检索(314)故障物理处理器的状态,以及将所检索的故障物理处理器的状态指定(319)为替代物理处理器的状态,所有这些步骤的操作方式都与上述图3中的方法类似。
图4的方法还包括由系统管理程序(184)使用被分配给专用分区或池的替代物理处理器(159)替换(318)故障物理处理器(156),该专用分区或池具有专用分区和池的优先级中的最低优先级。但是在图4的示例中,专用分区(103)的优先级=1;专用分区(104)的优先级=4;池(404)的优先级=2;以及池(408)的优先级=3。因此,专用分区(104)为具有专用分区和池的优先级中的最低优先级的专用分区或池,因此将从被分配给专用分区(104)的虚拟处理器的物理处理器中选择替代处理器,在此示例中为替代处理器(159)。
在图4的方法中,具有最低优先级的专用分区或池是专用分区(104),使用被分配给具有最低优先级的专用分区或池的替代物理处理器(159)替换(318)故障物理处理器(156)包括终止(402)具有最低优先级的专用分区,也就是说,终止专用分区(104)。可以通过由系统管理程序(184)停止在分区(104)上运行的任何应用程序、停止在分区(104)上运行的操作系统,以及将分区(104)断电来终止专用分区(104)。
为了进一步说明,图5是示出了根据本发明的实施例的用于替换故障物理处理器的进一步示例性方法的流程图。与图3中的方法相同,图5中的方法在支持多个逻辑分区(103、104、105、106、107、108)的计算机中执行。所述逻辑分区包括专用分区(103、104)和共享处理器分区(105、106、107、108)。由每个都分配有物理处理器(156、157、158、159)的虚拟处理器(121、123、125、127)支持所述专用分区。由虚拟处理器(124、126、128、130、132、134)的池(404、408)支持所述共享处理器分区,并且所述池分配有物理处理器,其中物理处理器(160、162、164)被分配给池(404),物理处理器(166)被分配给池(408)。图5的方法还与图3的方法的类似之处在于,图5的方法包括为专用分区和虚拟处理器池分配(304)优先级、检测(312)分区的故障物理处理器的检错停机、检索(314)故障物理处理器的状态,以及将所检索的故障物理处理器的状态指定(319)为替代物理处理器的状态,所有这些步骤的操作方式都与上述图3中的方法类似。
图5中的方法还包括由系统管理程序(184)使用被分配给专用分区或池的替代物理处理器(159)替换(318)故障物理处理器(166),该专用分区或池具有专用分区和池的优先级中的最低优先级。但是在图5的示例中,专用分区(103)的优先级=1;专用分区(104)的优先级=4;池(404)的优先级=2;以及池(408)的优先级=3。因此,专用分区(104)是具有专用分区和池的优先级中的最低优先级的专用分区或池,因此从被分配给专用分区(104)的虚拟处理器的物理处理器中选择替代处理器,在此示例中为替代处理器(159)。
在图5的方法中,具有最低优先级的专用分区或池是专用分区(104),使用被分配给具有最低优先级的专用分区或池的替代物理处理器(159)替换(318)故障物理处理器(166)包括过度(overcommitted)运行(502)具有最低优先级的专用分区,也就是说,过度运行专用分区(104)。
过度运行专用分区意味着由支持分区的虚拟处理器所代表的处理能力大于被分配为提供此能力的物理处理器数。系统管理程序(184)通过成比例地减少其中分派每个虚拟处理器的时间量来过度运行专用分区。当专用分区(104)过度运行时,系统管理程序(184)不是将两个虚拟处理器(125、127)分派到两个物理处理器(158、159)上的全部可用处理器时间中,而是将两个虚拟处理器只分配到一个物理处理器上,意味着对于分区(104)中的操作系统,每个虚拟处理器似乎以约一半的速度运行。因此,当过度运行时,专用分区(104)将不会达到由支持分区的虚拟处理器名义上表示的处理能力所指示的性能;专用分区中的操作系统和应用程序将在性能降低的情况下运行。但是过度运行的分区中的操作系统和应用程序将继续运行,这在许多情况下要优于终止。
为了进一步说明,图6是示出了根据本发明的实施例的用于替换故障物理处理器的进一步示例性方法的流程图。与图3中的方法相同,图6中的方法在支持多个逻辑分区(103、104、105、106、107、108)的计算机中执行。所述逻辑分区包括专用分区(103、104)和共享处理器分区(105、106、107、108)。由每个都分配有物理处理器(156、157、158、159)的虚拟处理器(121、123、125、127)支持所述专用分区。由虚拟处理器(124、126、128、130、132、134)的池(404、408)支持所述共享处理器分区,并且所述池分配有物理处理器,其中物理处理器(160、162、164)被分配给池(404),物理处理器(166)被分配给池(408)。图6的方法还与图3的方法的类似之处在于,图6的方法包括为专用分区和虚拟处理器池分配(304)优先级、检测(312)分区的故障物理处理器的检错停机、检索(314)故障物理处理器的状态,以及将所检索的故障物理处理器的状态指定(319)为替代物理处理器的状态,所有这些步骤的操作方式都与上述图3中的方法类似。
图6中的方法还包括由系统管理程序(184)使用被分配给专用分区或池的替代物理处理器(166)替换(318)故障物理处理器(156),该专用分区或池具有专用分区和池的优先级中的最低优先级。但是在图6的示例中,专用分区(103)的优先级=1;专用分区(104)的优先级=2;池(404)的优先级=3;以及池(408)的优先级=4。因此,池(408)为具有专用分区和池的优先级中的最低优先级的专用分区或池,因此从被分配给池(408)的物理处理器中选择替代处理器,在此示例中,仅有的分配给池(408)的处理器是物理处理器(166),因此选择处理器(166)作为此示例中的替代处理器。
在图6的方法中,具有最低优先级的专用分区或池是池(408),使用被分配给具有最低优先级的专用分区或池的替代物理处理器(166)替换(318)故障物理处理器(156)包括终止(602)具有最低优先级的池,也就是说,终止池(408)。可以通过由系统管理程序(184)停止在池(408)的虚拟处理器所支持的共享处理器分区(107、108)上运行的任何应用程序、停止在池(408)所支持的分区(107、108)上运行的操作系统,以及将池(408)所支持的分区(107、108)断电来终止池(408)。
在图6的方法中,使用替代物理处理器(166)替换(318)故障物理处理器(156)包括终止(602)具有最低优先级的池,也就是说,终止池(408),池(408)只分配有一个物理处理器,即处理器(166)。在此为了简化说明而配置的特定示例中,使用被分配给池的唯一物理处理器作为替代处理器要求必须终止池(408)。但是,具有最低优先级的池只分配有一个物理处理器只是用于说明的示例,并非对本发明进行限制。在图6的方法中,具有最低优先级的池可以使其物理处理器之一作为替代处理器,并且所述方法仍包括终止具有最低优先级的池,而不考虑被分配给具有最低优先级的池的物理处理器数。
为了进一步说明,图7是示出了根据本发明的实施例的用于替换故障物理处理器的进一步示例性方法的流程图。与图3中的方法相同,图7中的方法在支持多个逻辑分区(103、104、105、106、107、108)的计算机中执行。所述逻辑分区包括专用分区(103、104)和共享处理器分区(105、106、107、108)。由每个都分配有物理处理器(156、157、158、159)的虚拟处理器(121、123、125、127)支持所述专用分区。由虚拟处理器(124、126、128、130、132、134)的池(404、408)支持所述共享处理器分区,并且所述池分配有物理处理器,其中物理处理器(160、162、164)被分配给池(404),物理处理器(166)被分配给池(408)。图7的方法还与图3的方法的类似之处在于,图7的方法包括为专用分区和虚拟处理器池分配(304)优先级、检测(312)分区的故障物理处理器的检错停机、检索(314)故障物理处理器的状态,以及将所检索的故障物理处理器的状态指定(319)为替代物理处理器的状态,所有这些步骤的操作方式都与上述图3中的方法类似。
图7中的方法还包括由系统管理程序(184)使用被分配给专用分区或池的替代物理处理器(160)替换(318)故障物理处理器(156),该专用分区或池具有专用分区和池的优先级中的最低优先级。但是在图7的示例中,专用分区(103)的优先级=1;专用分区(104)的优先级=2;池(404)的优先级=4;以及池(408)的优先级=3。因此,池(404)为具有专用分区和池的优先级中的最低优先级的专用分区或池,因此从被分配给池(404)的物理处理器中选择替代处理器,在此示例中为替代处理器(160)。
在图7的方法中,具有最低优先级的专用分区或池是池(404),使用被分配给具有最低优先级的专用分区或池的替代物理处理器(160)替换(318)故障物理处理器(156)包括过度运行(702)具有最低优先级的池,也就是说,过度运行池(404)。
过度运行池意味着由池的虚拟处理器所代表的处理能力大于被分配给池的物理处理器数。系统管理程序(184)通过成比例地减少其中分派每个虚拟处理器的时间量来过度运行池。当池(404)过度运行时,系统管理程序(184)不是分派池的虚拟处理器(124、126、128、130)以便为共享处理器分区(105)提供1.25单位的处理器的处理能力以及为共享处理器分区(106)提供1.75单位的处理器的处理能力,而是将小于三分之一的处理能力分派给每个共享处理器分区(105、106),意味着对于分区(105、106)中的操作系统,池的每个虚拟处理器似乎以它们应运行的速度的三分之二来运行。因此,当过度运行时,池(404)将不会提供由池的虚拟处理器名义上表示的处理能力所指示的性能;池所支持的分区中的操作系统和应用程序将在性能降低的情况下运行。但是,过度运行的池所支持的分区中的操作系统和应用程序将继续运行,这在许多情况下优于终止。
主要在用于替换故障物理处理器的完整功能计算机系统的上下文中描述了本发明的示例性实施例。但是,本领域的技术人员将认识到,本发明还可以包含在布置在用于与任何适合的数据处理系统一起使用的信号承载介质上的计算机程序产品中。此类信号承载介质可以是用于机器可读信息的传输介质或可记录介质,包括磁介质、光介质或其他适合的介质。可记录介质的实例包括硬盘驱动器中的磁盘或软盘、用于光学驱动器的光盘、磁带以及本领域的技术人员将想到的其他介质。传输介质的实例包括用于语音通信的电话网络、诸如以太网TM之类的数字数据通信网络、使用网际协议通信的网络以及万维网。本领域的技术人员将立即认识到,任何具有适合的编程装置的计算机系统都将能够执行包含在程序产品中的本发明的方法的步骤。本领域的技术人员将立即认识到,虽然在本说明书中描述的某些示例性实施例面向在计算机硬件上安装和执行的软件,但是作为固件或硬件实现的备选实施例也在本发明的范围之内。
从上述描述可以理解,可以对本发明的各种实施例做出修改和更改而不偏离其真正精神。本说明书中的描述只是出于说明的目的并且不应以限制的意义进行理解。本发明的范围仅由以下权利要求的语言来限制。

Claims (7)

1.一种用于替换支持多个逻辑分区的计算机内的故障物理处理器的方法,所述逻辑分区包括专用分区和共享处理器分区,由分配有物理处理器的虚拟处理器来支持所述专用分区,由虚拟处理器池来支持所述共享处理器分区,所述池分配有物理处理器,所述方法包括:
为所述专用分区和所述虚拟处理器池分配优先级;
检测故障物理处理器的检错停机;
检索所述故障物理处理器的状态;
由系统管理程序使用被分配给专用分区或池的替代物理处理器来替换所述故障物理处理器,该专用分区或池具有所述专用分区和池的优先级中的最低优先级;以及
将所检索的所述故障物理处理器的状态指定为所述替代物理处理器的状态。
2.如权利要求1中所述的方法,其中:
具有最低优先级的所述专用分区或池是专用分区或池;以及
替换所述故障物理处理器包括终止具有最低优先级的所述专用分区。
3.一种用于替换故障物理处理器的装置,所述装置支持多个逻辑分区,所述逻辑分区包括专用分区和共享处理器分区,由分配有物理计算机处理器的虚拟处理器来支持所述专用分区,由虚拟处理器池来支持所述共享处理器分区,所述池分配有物理计算机处理器,计算机存储器在操作上与所述物理计算机处理器相连,所述计算机存储器内布置有能够执行以下步骤的计算机程序指令:
为所述专用分区和所述虚拟处理器池分配优先级;
检测故障物理处理器的检错停机;
检索所述故障物理处理器的状态;
由系统管理程序使用被分配给专用分区或池的替代物理处理器来替换所述故障物理处理器,该专用分区或池具有所述专用分区和池的优先级中的最低优先级;以及
将所检索的所述故障物理处理器的状态指定为所述替代物理处理器的状态。
4.如权利要求3中所述的装置,其中:
具有最低优先级的所述专用分区或池是专用分区或池;以及
替换所述故障物理处理器包括终止具有最低优先级的所述专用分区或包括过度运行具有最低优先级的所述专用分区。
5.一种用于替换支持多个逻辑分区的计算机内的故障物理处理器的计算机程序产品,所述逻辑分区包括专用分区和共享处理器分区,由分配有物理处理器的虚拟处理器来支持所述专用分区,由虚拟处理器池来支持所述共享处理器分区,所述池分配有物理处理器,所述计算机程序产品布置在信号承载介质上,所述计算机程序产品包括能够执行以下步骤的计算机程序指令:
为所述专用分区和所述虚拟处理器池分配优先级;
检测故障物理处理器的检错停机;
检索所述故障物理处理器的状态;
由系统管理程序使用被分配给专用分区或池的替代物理处理器来替换所述故障物理处理器,该专用分区或池具有所述专用分区和池的优先级中的最低优先级;以及
将所检索的所述故障物理处理器的的状态指定为所述替代物理处理器的状态。
6.如权利要求5中所述的计算机程序产品,其中所述信号承载介质包括可记录介质或传输介质。
7.如权利要求5或6中所述的计算机程序产品,其中:
具有最低优先级的所述专用分区或池是专用分区或池;以及
替换所述故障物理处理器包括终止具有最低优先级的所述专用分区或包括过度运行具有最低优先级的所述专用分区。
CN200680033250A 2005-09-30 2006-09-07 用于替换故障物理处理器的方法和装置 Active CN100580631C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/241,709 US7478272B2 (en) 2005-09-30 2005-09-30 Replacing a failing physical processor
US11/241,709 2005-09-30

Publications (2)

Publication Number Publication Date
CN101263457A true CN101263457A (zh) 2008-09-10
CN100580631C CN100580631C (zh) 2010-01-13

Family

ID=37495857

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200680033250A Active CN100580631C (zh) 2005-09-30 2006-09-07 用于替换故障物理处理器的方法和装置

Country Status (5)

Country Link
US (2) US7478272B2 (zh)
EP (1) EP1943591B1 (zh)
JP (1) JP4603077B2 (zh)
CN (1) CN100580631C (zh)
WO (1) WO2007039398A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102971715A (zh) * 2010-07-06 2013-03-13 三菱电机株式会社 处理器装置以及程序
CN108958934A (zh) * 2018-06-28 2018-12-07 郑州云海信息技术有限公司 一种cpu资源预留方法和装置
CN110750354A (zh) * 2018-07-24 2020-02-04 中国移动通信有限公司研究院 一种vCPU资源分配方法、装置和计算机可读存储介质

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7937616B2 (en) * 2005-06-28 2011-05-03 International Business Machines Corporation Cluster availability management
US8078907B2 (en) * 2006-01-19 2011-12-13 Silicon Graphics, Inc. Failsoft system for multiple CPU system
US20080126854A1 (en) * 2006-09-27 2008-05-29 Anderson Gary D Redundant service processor failover protocol
US8225315B1 (en) * 2007-07-23 2012-07-17 Oracle America, Inc. Virtual core management
US8302102B2 (en) * 2008-02-27 2012-10-30 International Business Machines Corporation System utilization through dedicated uncapped partitions
WO2010023756A1 (ja) * 2008-08-29 2010-03-04 富士通株式会社 仮想プロセッサを含む情報処理装置、情報処理方法、およびプログラム
KR101460611B1 (ko) * 2008-09-04 2014-11-13 삼성전자주식회사 멀티미디어 컨텐츠에 관한 사용자 관심정보의 수집 방법 및제공 방법과 그 장치
US8095821B2 (en) * 2009-03-17 2012-01-10 International Business Machines Corporation Debugging for multiple errors in a microprocessor environment
US9645857B2 (en) * 2009-12-17 2017-05-09 Hewlett Packard Enterprise Development Lp Resource fault management for partitions
US8505020B2 (en) * 2010-08-29 2013-08-06 Hewlett-Packard Development Company, L.P. Computer workload migration using processor pooling
US8713378B2 (en) 2011-07-07 2014-04-29 Microsoft Corporation Health monitoring of applications in a guest partition
JP5978783B2 (ja) * 2012-06-08 2016-08-24 日本電気株式会社 サーバ装置、管理ユニット、障害対処方法及びプログラム
US9280371B2 (en) 2013-07-10 2016-03-08 International Business Machines Corporation Utilizing client resources during mobility operations
US9274853B2 (en) 2013-08-05 2016-03-01 International Business Machines Corporation Utilizing multiple memory pools during mobility operations
US9563481B2 (en) 2013-08-06 2017-02-07 International Business Machines Corporation Performing a logical partition migration utilizing plural mover service partition pairs
JP6135403B2 (ja) * 2013-08-27 2017-05-31 富士通株式会社 情報処理システム、情報処理システムの障害処理方法
US10956193B2 (en) * 2017-03-31 2021-03-23 Microsoft Technology Licensing, Llc Hypervisor virtual processor execution with extra-hypervisor scheduling

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01224861A (ja) * 1988-03-03 1989-09-07 Nec Corp マルチプロセッサ制御方式
DE69113181T2 (de) * 1990-08-31 1996-05-02 Ibm Verfahren und Gerät zur Querteilungssteuerung in einer verteilten Verarbeitungsumgebung.
JP3196004B2 (ja) * 1995-03-23 2001-08-06 株式会社日立製作所 障害回復処理方法
JPH09167096A (ja) * 1995-12-18 1997-06-24 Hitachi Ltd 仮想計算機システムにおけるスケジューリング方法
JP3794151B2 (ja) * 1998-02-16 2006-07-05 株式会社日立製作所 クロスバースイッチを有する情報処理装置およびクロスバースイッチ制御方法
US6189112B1 (en) * 1998-04-30 2001-02-13 International Business Machines Corporation Transparent processor sparing
JP2000181890A (ja) 1998-12-15 2000-06-30 Fujitsu Ltd マルチプロセッサ交換機及びその主プロセッサ切替方法
JP3828321B2 (ja) * 1999-08-31 2006-10-04 富士通株式会社 負荷試験装置および負荷試験プログラムを記録したコンピュータ読み取り可能な記録媒体
US6587938B1 (en) * 1999-09-28 2003-07-01 International Business Machines Corporation Method, system and program products for managing central processing unit resources of a computing environment
US7140020B2 (en) 2000-01-28 2006-11-21 Hewlett-Packard Development Company, L.P. Dynamic management of virtual partition computer workloads through service level optimization
JP3768775B2 (ja) * 2000-04-27 2006-04-19 三菱電機株式会社 バックアップ装置及びバックアップ方法
US6574748B1 (en) * 2000-06-16 2003-06-03 Bull Hn Information Systems Inc. Fast relief swapping of processors in a data processing system
JP2003330737A (ja) * 2002-05-15 2003-11-21 Hitachi Ltd 計算機システム
JP4119162B2 (ja) * 2002-05-15 2008-07-16 株式会社日立製作所 多重化計算機システム、論理計算機の割当方法および論理計算機の割当プログラム
US7065641B2 (en) * 2002-06-13 2006-06-20 Intel Corporation Weighted processor selection apparatus and method for use in multiprocessor systems
JP4127375B2 (ja) * 2002-09-25 2008-07-30 富士通株式会社 マイクロコンピュータ
US7451183B2 (en) 2003-03-21 2008-11-11 Hewlett-Packard Development Company, L.P. Assembly and method for balancing processors in a partitioned server
US7275180B2 (en) * 2003-04-17 2007-09-25 International Business Machines Corporation Transparent replacement of a failing processor
US7493515B2 (en) 2005-09-30 2009-02-17 International Business Machines Corporation Assigning a processor to a logical partition

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102971715A (zh) * 2010-07-06 2013-03-13 三菱电机株式会社 处理器装置以及程序
CN102971715B (zh) * 2010-07-06 2015-07-08 三菱电机株式会社 处理器装置以及程序
CN108958934A (zh) * 2018-06-28 2018-12-07 郑州云海信息技术有限公司 一种cpu资源预留方法和装置
CN110750354A (zh) * 2018-07-24 2020-02-04 中国移动通信有限公司研究院 一种vCPU资源分配方法、装置和计算机可读存储介质
CN110750354B (zh) * 2018-07-24 2023-01-10 中国移动通信有限公司研究院 一种vCPU资源分配方法、装置和计算机可读存储介质

Also Published As

Publication number Publication date
US20090083575A1 (en) 2009-03-26
EP1943591A1 (en) 2008-07-16
US7765428B2 (en) 2010-07-27
CN100580631C (zh) 2010-01-13
EP1943591B1 (en) 2013-03-06
US7478272B2 (en) 2009-01-13
WO2007039398A1 (en) 2007-04-12
US20070079176A1 (en) 2007-04-05
JP4603077B2 (ja) 2010-12-22
JP2009510573A (ja) 2009-03-12

Similar Documents

Publication Publication Date Title
CN100580631C (zh) 用于替换故障物理处理器的方法和装置
CN101273334B (zh) 向支持多逻辑分区的计算机中的逻辑分区指派处理器的方法和系统
US8230425B2 (en) Assigning tasks to processors in heterogeneous multiprocessors
JP4056471B2 (ja) プロセッサに譲渡するためのシステム
JP6294586B2 (ja) 命令スレッドを組み合わせた実行の管理システムおよび管理方法
US9135126B2 (en) Multi-core re-initialization failure control system
JP5071913B2 (ja) 同時物理プロセッサ再割り当て方法、システム、およびプログラム
CN100533393C (zh) 用于在多处理器环境中管理对共享资源的存取的方法
US20140359356A1 (en) Information processing apparatus and method for shutting down virtual machines
CN110083494B (zh) 在多核心环境中管理硬件错误的方法和装置
FI78993C (fi) Oevervakare av driftsystem.
US8677374B2 (en) Resource management in a virtualized environment
US9329937B1 (en) High availability architecture
US9298516B2 (en) Verification of dynamic logical partitioning
US20140281288A1 (en) Managing cpu resources for high availability micro-partitions
US10095533B1 (en) Method and apparatus for monitoring and automatically reserving computer resources for operating an application within a computer environment
CN104077266A (zh) 多内核操作系统实现方法和实现装置及系统
US11126486B2 (en) Prediction of power shutdown and outage incidents
US8505019B1 (en) System and method for instant capacity/workload management integration
CN116820715A (zh) 作业重启方法、装置、计算机设备和可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant