CN101162431B - 为计算机系统组件的并发安装提供位置代码的方法和系统 - Google Patents

为计算机系统组件的并发安装提供位置代码的方法和系统 Download PDF

Info

Publication number
CN101162431B
CN101162431B CN2007101496451A CN200710149645A CN101162431B CN 101162431 B CN101162431 B CN 101162431B CN 2007101496451 A CN2007101496451 A CN 2007101496451A CN 200710149645 A CN200710149645 A CN 200710149645A CN 101162431 B CN101162431 B CN 101162431B
Authority
CN
China
Prior art keywords
code
position code
tram
equipment
concurrent
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.)
Expired - Fee Related
Application number
CN2007101496451A
Other languages
English (en)
Other versions
CN101162431A (zh
Inventor
尼古拉斯·E·博费丁
厄兰德·洛
卡尼沙·帕特尔
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 CN101162431A publication Critical patent/CN101162431A/zh
Application granted granted Critical
Publication of CN101162431B publication Critical patent/CN101162431B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Abstract

在为附接到和/或可能附接到计算机系统的现场可替换单元(FRU)最初产生/分配位置代码期间,服务处理器为每个当前没有附接的FRU提供别名位置代码。当服务处理器随后检测到FRU的并发安装时,服务处理器的固件根据从FRU检索的数据产生正确位置代码,并且用正确位置代码替换存储在服务处理器的内部数据结构内的别名位置代码。该固件还将正确位置代码转发回给使用可靠性应用程序,并且该应用程序在所有剩余的并发安装命令中利用新位置代码,以维护系统的单一、一致的形象。

Description

为计算机系统组件的并发安装提供位置代码的方法和系统
技术领域
本发明一般涉及计算机系统,尤其涉及计算机系统中的组件的并发安装。更具体地,本发明涉及用于为计算机系统中的纽件的并发安装提供位置代码的方法和系统。
背景技术
在某些传统的计算机系统中,有关已出故障或正出故障的组件的信息,可以经由使用可靠性(serviceability)应用程序(如修复和验证(R&V))检索(或监视)。使用可靠性应用程序可以在分开的硬件管理控制台(HMC)上运行。使用可靠性应用程序提供硬件资源的列表,如现场可替换单元(FRU),其安装在计算机系统以及将来可并发地安装到计算机系统中的其它的FRU内。该硬件资源列表用相对应的位置代码索引,该位置代码在故障检测以及其它与FRU相关联的过程期间被利用。
典型地,硬件资源中检测的故障将导致服务处理器的固件日志记录(log)描述组件问题的错误。在这些错误日志记录中记录的数据字段之一是硬件资源的位置代码。位置代码是独特的ASCII字符串,其提供哪个组件已出故障以及该组件物理地位于计算机系统中的何处的一些标识。装备了已出故障/正出故障的硬件资源、以及如查明计算机系统内的资源的实际安装位置的位置代码的信息的标识,然后系统管理器(或用户)能够开始新的FRU的并发更新/安装过程。
其它事情当中,并发维护过程(也称为“并发安装”)允许客户将新的FRU添加到系统、配置并激活新的FRU、并且开始在操作系统(OS)过程内使用新的FRU,所有都在所述系统运行时并且不要求任何系统停用(outage)。尽管功能强大,但用于完成该并发安装的能力对于支持软件创建了这样的问题:支持软件被要求将正确的位置代码信息报告给使用可靠性应用程序,使得应用程序可执行并发硬件安装。然而,位置代码信息通常不可用直到系统管理器执行并发安装操作。
这种问题出现是因为在许多情形中,服务处理器的固件产生位置代码而不知道有关后来能够在该特定位置安装的硬件的任何事情。例如,固件可以为给定的GX适配器插槽建立位置代码,即使在产生相对应的位置代码时没有GX适配器占用该特定插槽。然而,在一些实例中,固件必须从在组件自身上包括的重要(vital)产品数据(VPD)(例如FRU的VPD)动态建立组件的位置代码。从VPD建立位置代码的需要呈现了并发安装情形的问题,因为服务处理器的固件必须首先知道将来资源的正确位置代码,以推荐安装位置并且装配FRU用于操作。然而,固件没有发现该信息直到客户实际上执行该资源的安装。
因此本发明认识到,存在对这样的机制(或方法)的需求,其有效处理对在产生/分配初始位置代码之后,在某个将来时间并发安装的硬件资源分配不正确位置代码的问题。
发明内容
公开了一种方法和系统,用于当由系统的服务处理器提供别名(alias)位置代码作为初始位置代码时,能够为并发安装的硬件资源实时产生并分配正确位置代码。当运行在硬件管理控制台(HMC)上的使用可靠性应用程序(如修复和验证(R&V)),请求将来能够安装的FRU的位置代码时,所述服务处理器产生别名位置代码。为了响应该请求,服务处理器在随后的安装之前,返回其正确位置代码还未知的FRU的别名位置代码。然后,当系统管理器决定随后安装该FRU时,所述F&V应用程序将FRU的别名位置代码(与其它相关数据一起)发送到服务处理器,用来指示该硬件将被安装在何处。所述R&V应用程序指令服务处理器激活FRU。该服务处理器然后发现新的硬件,计算真实位置代码,并且将该真实位置代码传播给各种内部过程、数据结构和利用该正确位置代码的任何其它组件/设备/逻辑/应用程序,以便正确引用和访问FRU。
真实位置代码的传播防止主要的系统组件由于位置代码错配产生错误。在完成硬件激活之后,该服务处理器通知R&V应用程序FRU位置代码已经改变。该R&V应用程序然后使用正确的位置代码来完成并发安装流中的剩余的并发安装命令。
在下面详细的书面描述中,本发明的上面以及其它的目的、特征和优点将变得明显。
附图说明
当结合附图阅读时通过参照下面的说明性实施例的详细描述,本发明自身及使用的优选模式、进一步的目标及其优点将会被最好地理解,在附图中:
图1是示例计算机系统,在该系统中,本发明的各种特征可以根据本发明描述的实施例有利地实现;
图2是根据本发明的说明性实施例的、用于更新由图1的计算机系统利用的位置代码的子系统内的、各种具体硬件和软件资源的扩展视图;以及
图3-5是根据本发明的描述的各实施例的过程的各个部分的流程图,通过该过程,硬件资源并发地安装到计算机系统,并且硬件资源的正确位置代码被产生并且被传播到计算机系统内的各种组件。
具体实施方式
本发明提供了一种方法、系统和计算机程序产品,用于当由系统的服务处理器最初提供别名位置代码时,能够在硬件资源的并发安装期间动态产生正确的位置代码。在为附接和/或可能附接到计算机系统的现场可替换单元(FRU)最初产生/分配位置代码期间,服务器处理器为当前没有附接/连接到系统的每个FRU提供别名位置代码。当服务处理器随后检测到FRU的并发安装时,服务处理器的固件从由FRU检索的数据产生正确的位置代码,并且用正确的位置代码替换存储在服务处理器的内部数据结构内的别名位置代码。该固件还将正确的位置代码转发回到使用可靠性应用程序,并且该应用程序在所有剩余的并发安装命令中利用新的位置代码,以维护系统的单一、一致的形象(view)。
在由附图图示并且以下更详细描述的实施例中,当运行在硬件管理控制台(HMC)上的使用可靠性应用程序(如修复和验证(R&V))、请求将来能够安装的FRU的位置代码时,所述服务处理器产生别名位置代码。为了响应该请求,服务处理器在随后的FRU安装之前,返回其正确位置代码还未知的FRU的别名位置代码。然后,当系统管理器(或用户)随后决定安装该FRU时,所述R&V使用可靠性应用程序将FRU的别名位置代码(与其它相关数据一起)发送到服务处理器,用来指示该硬件将被安装在何处。所述R&V应用程序指令服务处理器激活FRU。该服务处理器然后发现新的硬件,计算真实位置代码,并且将该真实位置代码传播给各种内部过程、数据结构和利用该正确位置代码的任何其它组件/设备/逻辑/应用程序,以便正确引用和访问FRU。
真实位置代码的传播防止主要的系统组件由于位置代码错配产生错误。在完成硬件激活之后,该服务处理器通知R&V应用程序FRU的位置代码已经改变。该R&V应用程序然后将别名位置代码更新为正确的位置代码,并使用该正确的位置代码来完成并发安装流中的剩余的命令。
在下面的本发明的示范性实施例的详细描述中,充分详细地描述了可以实施本发明的具体示范性实施例,使得本领域技术人员能够实施本发明,并且要理解,可以利用其它实施例,而且可以进行逻辑、结构、程序、机械、电和其它的改变而不偏离本发明的精神或范围。因此,不以限制的含义进行下面的详细描述,并且本发明的范围仅仅由权利要求定义。
在附图的描述中,给类似元件提供了与之前附图的名称和标号类似的名称和标号。其中随后的附图利用在不同环境中的或者具有不同功能的元件,给该元件提供表示附图号码的不同的引导数字(例如,用于图1的1xx和用于图2的2xx)。分配给各元件的具体标号只提供来帮助描述,并且不意味着暗示对本发明的(结构或功能的)任何限制。
在本发明的描述中提供并且利用了某些术语。这些术语和它们相应的定义包括如下:
CM(并发维护):在计算机系统运行时,安装、修复或移除硬件;
HMC(硬件管理控制台):独立控制台,其经由连接到计算机的(各)服务处理器(用于R&V应用程序的代码运行在该处理器上)的网络连接,接口和控制一个或多个计算机系统;
R&V(修复和验证):运行在HMC上的应用程序,其通过计算机系统的资源的并发硬件修复或升级指导系统管理器;
计算机系统:包括一个或多个主管CPU/存储器/IO资源的节点、以及用于为一个或多个节点引导和提供额外服务的一个或多个服务处理器的系统(见图1);
VPD(重要产品数据):关于存储在嵌入式模块中的硬件的特定块的关键信息;
FRU(现场可替换单元):在服务行为中能够被替换的、计算机系统中的最小的分开的实体;以及
CM服务锁:由服务处理器管理的软件锁,用于串行化对并发维护功能的访问。
要理解,具体术语和/或参数名称的使用仅仅是为了示例,并且不意味着暗示对本发明的任何限制。本发明因此可以用不同的专门术语/专门名词实现而没有限制,该专门术语/专门名词被利用来描述上面和其它的参数。
现在参照附图,图1描绘了其中本发明的各特征可以有利地实现的计算机系统的框图表示。计算机系统100包括:中央电子综合体(CEC)102,其包括主机处理器嵌套(nest)105、输入/输出(I/O)嵌套110、主机存储器112和系统重要产品数据(VPD)115。主机处理器嵌套105被图示具有系统固件140。在系统操作期间,系统固件140被加载到主机存储器112中,并且由主机处理器嵌套105内的一个或多个处理器执行。系统VPD 115包括系统序列号(S/N)130和服务处理器(SP)S/N 135,其是最后与系统固件140通信的SP的SN。
除了上面的组件外,计算机系统100还包括至少一个SP即SP 120,其连接到I/O嵌套110和系统VPD 115。SP 120包括专用CPU 134和存储器148(即,闪存或DRAM),其存储各种SP实用程序(utility)和其它SP信息,包括:(a)SP自己的S/N 131;(b)最后的系统S/N136,其是在SP 150最后一次供电时SP 150插入的系统的S/N;以及(c)AFLCU实用程序150,其在下面描述。此外,SP 120包括SP系统固件142,其执行在此描述的并且一般归因于SP 120的几个功能性特征。SP 120被利用来控制CEC 102内的各组件,并且还初始化并联机(on-line)在并发安装操作期间随后连接到CEC 102的FRU。图1还描绘了示例FRU 160,其连接到I/O嵌套105和系统VPD 115。FRU 160可以是能够连接到I/O嵌套105的I/O端口、并且用CEC 102的各组件操作的任何设备。
本领域普通技术人员将意识到,在图1中描绘的硬件可以变化。例如,除了或替代描绘的硬件,也可以使用其它外围设备(如光盘驱动器等)。因此,描绘的示例不意味着暗示对于本发明的结构性限制。计算机系统100可以被描述为计算机系统的具体配置;然而,本发明的特征可充分应用于任何计算机系统,并且不局限于描述的计算机系统100的配置。因此,计算机系统100可以是例如IBM eServerpSeries系统,国际商业机器公司(Armonk,N.Y.)的产品。
如图1所示,除了上述的硬件组件外,CEC 102还包括许多软件组件,包括操作系统(OS)155(例如,高级交互执行体
Figure G2007101496451D00061
(国际商业机器公司的商标)或
Figure G2007101496451D00062
(自由软件基金会和Linux标记协会的注册商标)和一个或多个软件应用程序,包括客户端实用程序152。客户端实用程序152控制激活电力域(Activate Power Domain)过程,用于提供电力给各种组件/设备(如FRU160),如下所述。
此外,提供了本发明的各种特征作为存储在SP存储器148内、并由SP的CPU 134执行的软件指令。在本发明特有的软件指令中是包括用于能够产生别名位置代码的指令、以及用于随后确定连接的FRU的正确位置代码并用正确位置代码更新系统的指令。为了简单,将启用上面的位置代码特征的代码集合体称为“自动FRU位置代码更新”(AFLCU)实用程序。在实际的实现中,AFLCU实用程序可以添加到现有的服务处理器操作代码(或固件),以提供下面描述的各种功能。
在实现中,AFLCU实用程序150在CPU 134上执行。根据说明性实施例,当SP的CPU 134执行AFLCU实用程序150时,AFLCU实用程序150启用计算机系统100(图1),尤其是子系统200(图2)以完成各种功能过程,包括下面描述的和由图3-5图示的那些特征和功能。
现在特定地回到图2,根据说明性实施例图示了示例子系统的框图表示,在该子系统中产生了FRU的正确位置代码,并且FRU当前被安装并且提供了电力。如所示的,CEC 102包括系列软件逻辑组件即客户端152,其连接到激活电力域265。激活电力域265控制从CEC 102的主电源对FRU的电力提供。两个FRU被图示分别连接到多个电力端口之一。第一FRU,即遗留(legacy)FRU 240假定在系统设立(或产生)初始位置代码组(包括将来可能连接的FRU的别名位置代码)时、连接到CEC 102。这些位置代码被存储在本地位置代码表267内并且还维持在R&V应用程序230内。第二FRU,即新的FRU 245假定在已经建立初始位置代码组之后的某个将来时间、连接到CEC 102。每个FRU 240和245包括对应的VPD。
当FRU连接到激活电力域265的电力端口之一时,涉及客户端260和SP 120的系列过程,使得电力能够经由端口提供给FRU。在激活电力域265内,与遗留FRU 240连接的第一端口用逻辑“1”标注。该逻辑1标注指示哪些端口具有连接的和功能FRU(即,从激活电力域接收电力的安装的FRU)。同时逻辑“0”指示没有FRU连接到其它端口。这些端口最初被分配了在此描述的别名位置代码。要注意的是,新FRU 245的端口被显示为从逻辑0转换到1,因为新的FRU连接并且经受并发安装的过程,其中新的FRU 245被初始化并设立来在分配了正确的位置代码之后接收电力。该过程在下面将进一步详细描述。
图2还图示了在SP 120内的相关软件结构的扩展视图,该SP 120除了固件142外,还包括AFLCU实用程序150、VPD位置代码244和CM服务锁250的代码。AFLCU 150驻留在SP的存储器(闪存/DRAM)上并且在专用的SP CPU 134上执行。当实施AFLCU功能时,固件142与CEC硬件和软件尤其是客户端152相互作用。下面提供了使用这些软件组件的更详细的描述。
HMC 225经由网络220耦合到SP 120,从该HMC 225可以激活/启动本发明的几个特征。HMC 225包括R&V实用程序230,其是可以在HMC 225内提供的不同的使用可靠性应用程序的一个示例。在描述的实施例中,R&V实用程序230(在此也称为R&V应用程序230)完成本发明的描述内的、归因于HMC 225的特定功能。在流程图的描述中描述了这样的方法,通过该方法,图示的各组件在整个系统200内相互作用以提供更新本发明的特征的位置代码。
图3-5是根据说明性实施例的流程图,其图示由AFLCU实用程序150和系统200内的其它组件完成、以使得新的FRU 245能够并发安装在系统200上的整组过程的各个部分。图3尤其描述了产生和分配别名位置代码以响应来自R&V应用程序230的初始查询的过程。该过程在块302开始,在该块服务处理器固件142为每个(随后添加的)FRU产生别名位置代码,该FRU的位置代码必须在实际设备安装期间动态地产生。
根据说明性实施例,别名总是由系统平台预先定义,使得该别名不依赖于包括在要安装的FRU内的任何信息。如在块304提供的,服务处理器120提供响应,以查询用于使用可靠性应用程序(如在HMC 225上运行的R&V应用程序230)的命令,来读取关于将来可能安装的FRU的信息。该信息包括用于这样的硬件的别名位置代码。在块306处确定用户/系统管理器是否随后决定安装由别名位置代码引用的硬件。如果需要这样的安装,则R&V应用程序230指令服务处理器120开始用于要安装的特定FRU的并发维护过程,如在块308所示。
图4图示了这样的过程,通过该过程,AFLCU实用程序150用真实位置代码替代最初的别名位置代码。为了串行化对并发维护功能的访问,服务处理器120维持在此称为“CM服务锁”250的软件锁。如在块402所示,客户端152通过传递(pass in)位置代码(除了其它信息/数据外),在CM操作的开始处获得CM服务锁250。因为客户端152在并发安装过程中对所有其它CM命令发送相同位置代码,所以本发明的一个重要要求是:客户端的位置代码匹配包括在CM服务锁250中的位置代码(即,CM位置代码)。另一个重要要求是:客户端的位置代码和CM位置代码都为正被安装的FRU引用最准确(即正确)的位置代码。
返回到附图的描述,在通过发送别名位置代码获得CM服务锁250之后(块402),客户端260发出“激活电力域”命令,如在块404所示。该激活电力域命令激活主初始化例行程序,以使最近安装的资源(例如,FRU 245)联机。当触发激活电力域命令时,如在块406确定的,过程将异步事件返回到R&V应用程序230以指示所述命令是否成功完成,如在块408所示。命令的成功完成指示FRU正确地安装并且正在接收电力。
图5现在图示这样的过程,通过该过程,AFLCU实用程序150(与客户端152一起操作,该客户端152控制激活电力域命令),用FRU的真实位置代码替代它的别名位置代码。在该描述中,通过执行AFLCU实用程序150提供的某些过程触发其它过程(如客户端152的操作)的执行。为了描述的清楚,过程的主要部分被描述为由AFLCU实用程序150完成,尽管要意识到,其它组件可以有助于完成AFLCU实用程序150的次要过程。
由图5描述的过程在块502处开始,其图示了系统管理器以及使用R&V应用程序230开始新FRU(例如,FRU 245)的安装。在描述的实施例中,该安装由将FRU连接到系统的端口之一的系统管理器的触发。R&V应用程序230然后指令服务处理器激活FRU,并且R&V应用程序230在激活请求内转送别名位置代码。在检测到新的FRU安装时,客户端260开始“激活电力域”命令处理,如在块504所示。
当服务处理器接收激活请求以及别名位置代码时,服务处理器执行AFLCU实用程序150,其从最近安装的FRU的VPD模块读取相关的数据字段,如在506块所示。然后,如在块508描绘的,AFLCU实用程序150利用来自数据字段的信息来动态构造/产生正确的位置代码。在构造/产生正确的位置代码之后,AFLCU实用程序150用正确的位置代码替代服务处理器的内部VPD表144中的别名位置代码,如在块510提供的。在块512,AFLCU实用程序150确定所述正确的位置代码是否不同于别名位置代码。如果正确的位置代码没有不同,则AFLCU实用程序150启用客户端152和固件,以完成并发安装而不更新(别名)位置代码,如在块516所示。
然而,如果正确的位置代码不同于别名位置代码,则AFLCU实用程序首先用正确的位置代码替代VPD位置代码表244中的别名位置代码,如在块514提供的。接着,在块518,AFLCU实用程序150锁定CM服务锁数据结构(250),并且用正确的位置代码替换在CM服务锁数据结构(250)内的别名位置代码。根据本发明,该替换对防止所有将来的CM命令的故障是必要的,因为CM服务锁的位置代码否则将不匹配VPD表内的位置代码。替换过程还要求锁定CM服务锁数据结构以确保极小的(atomic)更新。
一旦AFLCU实用程序150完成对CM服务锁数据结构的更新,AFLCU实用程序150就解锁CM服务锁数据结构,如在块520所示。此外,因为在激活电力域命令内的本地位置代码表267还包括别名位置代码,所以AFLCU实用程序150将本地位置代码表267(或CM位置代码)更新为正确的位置代码,如在块522所示。该本地位置代码表267的更新确保当前正在执行的激活电力域命令实例内的将来操作,不与现在更新的CM服务锁250冲突。
在FRU已经被初始化后,AFLCU实用程序150将新位置代码返回给激活电力域命令已完成的异步事件中的R&V 230,如块524所示。该激活电力域命令然后对CM流中的剩余的命令利用新位置代码(代替所述别名),包括提供电力给FRU,如在块526所示。通过利用新位置代码,激活电力域265因此避免与更新的CM服务锁250冲突。激活电力域命令处理和并发安装操作然后在终止块528结束。
除了上述的方法外,本发明的延伸涉及在某些情形中的不同方法的使用。现在提供两种这样的方法:
在第一种更简单的方法中,在所有环境中甚至当真实位置代码可以确定时利用别名位置代码。该解决方案在一定程度有效,但是可能引入关于使用可靠性的问题。因为位置代码将经常不正确,所以由于由别名引用的硬件中的故障产生的任何错误日志记录将不会被正确地报告。
在第二种方法中,服务处理器的固件142在并发安装期间和之后,简单地维护别名位置代码到真实位置代码的映射(因为真实位置代码被动态发现)。该第二种方法从功能性角度比第一种方法更好。然而,第二种方法要求设计的复杂度大得多,因为所有相关的组件必须能够处理多个位置代码和相对应的别名位置代码的映射。
给定上面的方法和传统的方法,在实现本发明时认识到某些优点。这些优点中的3个包括:(1)本发明的应用范围在本地,其降低了系统复杂度。与如上所述的第二种替代方法相比,代码实现仅仅影响少数的内部组件,这实际上是普遍的;(2)该应用实现了最高可能的位置代码精确度,因为该算法更新了所有组件,其一旦确定了正确位置代码时就利用该位置代码。精确的程度超过了由如上所述的第一种替代方法提供的程度;(3)最后,本发明的应用确保错误报告将为试图重新安装的硬件的任何故障,提供准确的使用可靠性信息。
本发明解决了现有的并发维护过程发现的问题,其允许在系统正在运行时将新硬件现场可替换单元(FRU)添加到系统。计算机系统因此能够激活FRU并且开始在操作系统内使用FRU,根本不要求任何系统停用。本发明通过提供别名位置代码来触发并发安装、然后利用服务处理器内以及使用可靠性应用程序内的正确位置代码动态更新别名位置代码,消除了在应用程序支持/执行并发硬件安装之前、要求固件将正确的位置代码信息报告给使用可靠性应用程序的问题。
作为最后的问题,重要的是,尽管已经并且将继续在安装了软件的完全功能的计算机系统的环境中描述本发明的说明性实施例,但是本领域技术人员将意识到,本发明的说明性实施例的软件方面能够分发为各种形式的程序产品,并且本发明的说明性实施例同等地应用,而不管用来实际实现该分发的信号承载介质的特定类型。信号承载介质的示例包括可记录类型介质(如软盘、硬盘驱动器、CD ROM)和传输类型介质(如数字和模拟通信链路)。
尽管已经参照优选实施例特定地显示并描述了本发明,但是本领域技术人员将理解,在其中可以进行各种形式和细节的改变,而不偏离本发明的精神和范围。

Claims (11)

1.一种在包括服务处理器、系统固件、以及控制将电力分配到连接的各硬件设备的激活电力域的计算机系统中提供位置代码的方法,包括:
为可能随后连接到所述计算机系统的设备分配别名位置代码;以及
当在并发安装过程期间该设备随后连接时:
自动确定设备的正确位置代码;以及
在利用设备的正确位置代码的每个过程和系统组件,动态地用正确位置代码替换别名位置代码,以完成涉及该设备的随后操作和并发安装;其中所述动态替代别名位置代码包括:
用正确位置代码替换服务处理器的内部重要产品数据位置表中的别名位置代码;
确定正确位置代码是否不同于别名位置代码;以及
当正确位置代码不同于别名位置代码时,锁定并发维护服务锁数据结构以确保极小的更新,用正确位置代码替换并发维护服务锁数据结构内的别名位置代码,以及解锁并发维护服务锁数据结构。
2.如权利要求1所述的提供位置代码的方法,其中所述分配包括经由服务处理器固件产生该设备的别名位置代码,该设备的正确位置代码在将来时间的并发安装期间动态产生,其中所述别名位置代码由系统平台预先定义,并且不依赖于随后安装的设备中包括的信息。
3.如权利要求2所述的提供位置代码的方法,还包括:
响应于从修复和验证使用可靠性应用程序接收查询,将回答消息提供给使用可靠性应用程序,所述查询请求有关安装的设备和其它可能随后安装的设备的信息,所述回答消息包括可能随后安装的每个其它设备的别名位置代码。
4.如权利要求3所述的提供位置代码的方法,其中,当对其它设备之一请求并发安装时,所述自动确定正确位置代码包括:
检测设备的物理耦合;
从设备的重要产品数据模块读取相关数据字段;以及
使用来自数据字段的信息动态地构造正确位置代码。
5.如权利要求1所述的提供位置代码的方法,还包括:
将激活电力域的本地位置代码表更新为正确位置代码;
利用正确位置代码动态开始激活电力域命令处理;以及
利用从本地位置代码表接收的正确位置代码激活电力从激活电力域到设备,其中在所述设备连接的正确位置处给所述设备供电用于操作。
6.如权利要求5所述的提供位置代码的方法,其中所述动态开始包括:
在服务处理器的并发维护服务锁处接收请求的信息,该信息包括由并发维护服务锁操作请求来开始并发维护功能的位置代码,其中所述服务处理器通过维护并发维护服务锁串行化对并发维护功能的访问;
通过传递包括位置代码的服务处理器的请求的信息,使得客户端过程在并发维护操作的开始能够获得并发维护服务锁;
当并发维护服务锁传递所述设备的正确位置代码并且由客户端过程获取时,发出激活电力域命令以激活使得该设备联机的初始化例行程序;以及
当设备的初始化例行程序完成时:
将正确位置代码转发给在“激活电力域命令完成”的异步事件中的修复和验证应用程序,以在修复和验证应用程序处替换别名位置代码;以及
使得激活电力域命令能够对并发维护流中的随后的命令利用正确位置代码,包括给现场可替换单元提供电力。
7.一种提供位置代码的系统,包括:
服务处理器,其具有专用处理器和服务处理器固件;
互连组件的集合,包括耦合到服务处理器并且由服务处理器监视和控制的I/O、处理器和存储器;以及
用于将设备并发安装到处理组件的集合的装置;
其中所述服务处理器的专用处理器包括:
为可能随后连接到计算机系统的设备分配别名位置代码的模块;以及当在并发安装过程期间设备随后连接时自动确定设备的正确位置代码的模块;以及在利用设备的正确位置代码的每个过程和系统组件,动态地用正确位置代码替换别名位置代码,以完成涉及该设备的随后操作和并发安装的模块,其包括:
用于用正确位置代码替换服务处理器的内部重要产品数据位置表中的别名位置代码的模块;
用于确定正确位置代码是否不同于别名位置代码的模块;以及
当正确位置代码不同于别名位置代码时:用于锁定并发维护服务锁数据结构以确保极小的更新的模块;用于用正确位置代码替换并发维护服务锁数据结构内的别名位置代码的模块;以及用于解锁并发维护服务锁数据结构的模块。
8.如权利要求7所述的提供位置代码的系统,其中所述为可能随后连接到计算机系统的设备分配别名位置代码的模块还包括:
用于经由服务处理器固件产生每个设备的不同的别名位置代码的模块,该设备的正确位置代码在将来时间的并发安装期间动态产生,其中所述别名位置代码由系统平台预先定义,并且不依赖于随后安装的设备中包括的信息;以及
用于响应于从修复和验证使用可靠性应用程序接收查询、将回答消息提供给使用可靠性应用程序的模块,所述查询请求有关安装的设备和其它可能随后安装的设备的信息,所述回答消息包括可能随后安装的每个其它设备的别名位置代码。
9.如权利要求8所述的提供位置代码的系统,其中所述动态地用正确位置代码替换别名位置代码,以完成涉及该设备的随后操作和并发安装的模块还包括:
用于接收请求其它设备之一的并发安装请求的模块;
用于检测其它设备的物理耦合的模块;以及
用于通过从其它设备的重要产品数据模块读取相关数据字段以及使用来自数据字段的信息动态构造正确位置代码来完成所述动态确定正确位置代码的模块。
10.如权利要求7所述的提供位置代码的系统,其中:
所述互连组件的集合包括控制给一个或多个连接的设备分配电力的激活电力域;以及
所述提供位置代码的系统还包括:
用于将激活电力域的本地位置代码表更新为正确位置代码的模块;
用于自动开始激活电力域命令处理以响应用所述正确位置代码更新的模块;以及
用于利用从本地位置代码表接收的正确位置代码激活电力从激活电力域到设备的模块,其中在另一设备连接的正确位置处给所述设备供电用于操作。
11.如权利要求10所述的提供位置代码的系统,其中所述用于自动开始的激活电力域命令处理以响应用所述正确位置代码更新的模块包括:
用于在服务处理器的并发维护服务锁处接收包括由并发维护服务锁操作请求的位置代码的信息、用来启动并发维护功能的模块,其中所述服务处理器通过维护并发维护服务锁串行化对并发维护功能的访问;
用于通过传递包括正确位置代码的请求的信息、使得客户端过程能够在并发维护操作的开始获得并发维护服务锁的模块;
当并发维护服务锁接收所述设备的正确位置代码并由客户端过程获取时,用于发出激活电力域命令以激活使得该另一设备联机的初始化例行程序的模块;以及
当设备的初始化例行程序完成时:用于将正确位置代码转发给在“激活电力域命令完成”的异步事件中的修复和验证应用程序、以在修复和验证应用程序处替换别名位置代码的模块;以及用于使得激活电力域命令能够为并发维护流中的随后的命令利用正确位置代码的模块,所述随后的命令包括提供电力给现场可替换单元。
CN2007101496451A 2006-10-10 2007-09-10 为计算机系统组件的并发安装提供位置代码的方法和系统 Expired - Fee Related CN101162431B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/548,068 2006-10-10
US11/548,068 US8001287B2 (en) 2006-10-10 2006-10-10 Dynamically updating alias location codes with correct location codes during concurrent installation of a component in a computer system

Publications (2)

Publication Number Publication Date
CN101162431A CN101162431A (zh) 2008-04-16
CN101162431B true CN101162431B (zh) 2010-06-09

Family

ID=39297359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007101496451A Expired - Fee Related CN101162431B (zh) 2006-10-10 2007-09-10 为计算机系统组件的并发安装提供位置代码的方法和系统

Country Status (2)

Country Link
US (1) US8001287B2 (zh)
CN (1) CN101162431B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9143338B2 (en) * 2012-10-05 2015-09-22 Advanced Micro Devices, Inc. Position discovery by detecting irregularities in a network topology
CN104679443A (zh) * 2013-12-03 2015-06-03 昆达电脑科技(昆山)有限公司 数据自动写入装置及方法
JP6701863B2 (ja) * 2016-03-24 2020-05-27 日本電気株式会社 ファームウェア配信システム、配信装置、ファームウェア配信方法およびファームウェア配信プログラム
US10652190B2 (en) * 2016-11-09 2020-05-12 Thomson Reuters Enterprise Centre Gmbh System and method for detecting geo-locations in social media
CN113778915B (zh) * 2020-06-09 2023-10-10 慧荣科技股份有限公司 生产固态硬盘的方法及计算机可读取存储介质及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185638B1 (en) * 1998-10-07 2001-02-06 International Business Machines Corporation Method and system for dynamically assigning addresses to an input/output device
CN1412995A (zh) * 2002-10-16 2003-04-23 华为技术有限公司 数据通信设备中配置信息的管理方法
CN1831777A (zh) * 2005-03-10 2006-09-13 戴尔产品有限公司 用于管理多个热插拔操作的系统和方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3347357A1 (de) * 1983-12-28 1985-07-11 Siemens AG, 1000 Berlin und 8000 München Einrichtung zum vergeben von adressen an steckbare baugruppen
US6041364A (en) * 1996-12-19 2000-03-21 Intel Corporation Method and system for adding a device entry to a device tree upon detecting the connection of a device
US5935252A (en) * 1997-08-18 1999-08-10 International Business Machines Corporation Apparatus and method for determining and setting system device configuration relating to power and cooling using VPD circuits associated with system devices
US6044411A (en) * 1997-11-17 2000-03-28 International Business Machines Corporation Method and apparatus for correlating computer system device physical location with logical address
US6243774B1 (en) * 1998-06-30 2001-06-05 International Business Machines Corporation Apparatus program product and method of managing computer resources supporting concurrent maintenance operations
US6230265B1 (en) * 1998-09-30 2001-05-08 International Business Machines Corporation Method and system for configuring resources in a data processing system utilizing system power control information
US6148419A (en) * 1998-09-30 2000-11-14 International Business Machines Corp. System diagnostic location codes
US6438624B1 (en) * 1999-03-30 2002-08-20 International Business Machines Corporation Configurable I/O expander addressing for I/O drawers in a multi-drawer rack server system
US6625728B1 (en) * 1999-11-02 2003-09-23 International Business Machines Corporation Method and apparatus for locating and displaying a defective component in a data processing system during a system startup using location and progress codes associated with the component
US6961785B1 (en) * 2000-08-03 2005-11-01 International Business Machines Corporation Permanent open firmware PCI host bridge (PHB) unit addressing to support dynamic memory mapping and swapping of I/O drawers
US6725396B2 (en) * 2000-12-28 2004-04-20 International Business Machines Corporation Identifying field replaceable units responsible for faults detected with processor timeouts utilizing IPL boot progress indicator status
US6968414B2 (en) * 2001-12-04 2005-11-22 International Business Machines Corporation Monitoring insertion/removal of server blades in a data processing system
US7730476B2 (en) * 2003-07-01 2010-06-01 Hewlett-Packard Development Company, L.P. Field-replaceable unit revision compatibility
US7234085B2 (en) * 2004-01-13 2007-06-19 International Business Machines Corporation Method, system, and product for hierarchical encoding of field replaceable unit service indicators
US7103789B2 (en) * 2004-01-13 2006-09-05 International Business Machines Corporation Method, system, and product for indicating power status of field replaceable units

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6185638B1 (en) * 1998-10-07 2001-02-06 International Business Machines Corporation Method and system for dynamically assigning addresses to an input/output device
CN1412995A (zh) * 2002-10-16 2003-04-23 华为技术有限公司 数据通信设备中配置信息的管理方法
CN1831777A (zh) * 2005-03-10 2006-09-13 戴尔产品有限公司 用于管理多个热插拔操作的系统和方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2005-18782A 2005.01.20

Also Published As

Publication number Publication date
US8001287B2 (en) 2011-08-16
CN101162431A (zh) 2008-04-16
US20080155368A1 (en) 2008-06-26

Similar Documents

Publication Publication Date Title
CN101393525B (zh) 用于为计算机程序打补丁的系统和方法
CN101432690B (zh) Bios配置更新技术
CN101384985B (zh) Sas区域组权限表版本标识符
CN1836208B (zh) 计算机系统和分布式应用程序基于模型管理的方法和系统
CN102959498B (zh) 包括向外扩展型存储系统的存储系统群及其管理方法
CN101162431B (zh) 为计算机系统组件的并发安装提供位置代码的方法和系统
CN1467632B (zh) 基于映像的软件安装的系统和方法
CN101681257B (zh) 虚拟机控制
CN100555279C (zh) 不用快照的项同步系统和方法
US20090043958A1 (en) Method and apparatus for capacity on demand dynamic chunk allocation
RU2543316C2 (ru) Система и способ отказоустойчивого выполнения задач по расписанию в распределенных средах
JP2004533032A (ja) ホストコンピュータを構築するシステムおよび方法
CN111666111B (zh) 多节点储存系统及其固件的更新方法
CN100421082C (zh) 自动复制功能选择的系统、设备和方法
CN101165654A (zh) 不同类型操作系统中使用通用预安装环境的方法和系统
CN103218180A (zh) 磁盘定位方法和定位装置
CN103455368A (zh) 一种死锁检测方法、节点及系统
CN1834912B (zh) 用于可扩展互联网引擎的iSCSI引导驱动系统及方法
CN105051681A (zh) 利用平台层协调应用程序部署
JP2002049517A (ja) 記憶システム
CN101211362B (zh) 用于数据库更新管理的系统和方法
EP4086758A1 (en) Software update on legacy system without application disruption
GB2614209A (en) Merged infrastructure for manufacturing and lifecycle management of both hardware and software
US20150312087A1 (en) Server Information Handling System NFC Ticket Management and Fault Storage
CN101158901B (zh) 一种桥接企业级与普通级javabean的方法

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100609

Termination date: 20160910

CF01 Termination of patent right due to non-payment of annual fee