计算机系统、故障容许系统及控制方法和程序的制作方法

文档序号:6520564阅读:249来源:国知局
专利名称:计算机系统、故障容许系统及控制方法和程序的制作方法
技术领域
本发明涉及一种计算机系统、一种使用其的故障容许系统及其操作控制方法和程序,具体地,涉及一种故障容许计算机系统的改进。
背景技术
近年来,广泛使用的通用CPU的性能明显增强,通过在使用这种通用CPU的工作站或服务器上安装通用操作系统(OS),提供了高性能且廉价的系统。结果,即使是传统上使用非常昂贵大型计算机的应用程序,也可以使用利用高性能和廉价通用CPU的系统。
另一方面,系统需要每天24小时持续运行的危急任务应用程序也在增多。在这些应用程序中,重要的是构造系统以防止系统死机。
然而,在这种通用CPU和通用OS中,由于缺乏CPU自身的故障检测功能,在通用OS中硬件故障的情况下,当出现故障时,由于缺乏用于响应的故障通知手段和故障处理的限定,硬件故障引起系统崩溃。因此,为了提供高可靠性的系统,需要添加特定外围电路或开发专用OS,这造成在难以在跟随开发普通通用CPU系统的同时来开发高可靠性的系统。因此,普通系统和高可靠性系统之间的成本性能差趋向于增大。
因此,为了提供一种与使用通用CPU的计算机具有共性的高可靠性计算机系统,例如故障容许计算机系统,如日本专利待审No.09-034809所述,提出了一种与相同时钟同步地执行相同处理的CPU,一种用于检测CPU的故障并断开故障CPU的设备以及一种用于通过取决于IO故障的CPU指令来断开故障IO路径的系统。然而,在广泛使用的通用OS中,由于没有提供硬件故障通知方法和故障处理功能这一事实,存在系统崩溃的问题。
因此,为了使用通用OS,需要能够将硬件故障和OS完全分离的配置。例如,参考国际专利申请的国家公开No.2001-523855,通过一个计算机系统分别配置了计算单元(CE)和IO控制部分(IOP),并且每一个单元多次相连,以便实现冗余。在单元之间执行通信,并且在检测到故障时断开CE或IOP。
例如,对于IO控制部分,从OS的角度硬件是可视的。尽管可以暂停其中出现故障的IO控制部分,该故障不会直接影响OS,并且通过检测故障并利用剩余的冗余IO控制部分返回正常响应能够消除故障的出现。
然而,在该系统中,CPU和IO分别需要一个计算机,此外,为了构成冗余配置,需要多个计算机来实现冗余。此外,由于每一个计算机运行不同步或不同,需要安装额外的OS许可,系统变得昂贵。
存在一种系统,通过利用通用OS上的标准PnP(即插即用),能够动态地改变IO设备或总线上IO桥的连接配置,因此,设想通过采用利用这种PnP软件的冗余配置系统来构成高可靠性故障容许计算机系统。
然而,对于IO桥PnP处理,不支持完全动态配置改变。例如,在连接IO桥时,由于不确定与IO桥相连的设备所需的存储器空间分配量以及设备的数目,由于PnP控制软件或OS的限制(通常由固定值限定),不能自由地将存储器空间分配给相连的IO桥,从而限制了设备的数目和类型。
例如,在IO桥的PnP连接的情况下,由于OS不能确定IO桥需要多少资源,分配了一定存储器空间并且之后不能改变。因此,当在相连IO桥下连接其它IO桥或设备时,不能连接需要比分配给第一IO桥更多存储器空间的IO桥或设备。
此外,如果连接了多个设备,由于所需的存储器空间可能会超出分配给IO桥的存储器空间这一事实,一些设备不能根据相连设备的数目来分配存储器资源。存储器资源分配的这种限制在多级IO桥配置系统中称为严重问题,多个IO桥在PnP连接IO桥下相连。
传统上,由于上述限制,为了构造具有使用PnP软件的系统的故障容许计算机系统,需要修改OS标准PnP控制软件和OS自身,以便充分地将资源分配到IO桥。

发明内容
本发明的目的是提供一种能够构造冗余配置的高可靠性和高可用性计算机系统,而无需修改已有的通用OS功能,还提供了一种使用上述系统的故障容许系统及其操作控制方法和程序。
根据本发明的一种计算机系统包括CPU、存储器、总线和用于将IO设备与总线相连的IO桥,其中计算机系统包括伪IO总线桥,在另一个系统与总线相连的冗余配置期间,伪IO总线桥从总线断开,并且在其它系统从总线断开的单机配置期间,伪IO总线桥保持IO桥的设置信息,以仿真所述其它系统的IO桥。
在根据本发明的故障容许系统中,将上述计算机系统配置为冗余配置。
一种故障容许系统的操作控制方法,所述故障容许系统包括通过总线互连的第一和第二计算机系统,以形成冗余配置,每一个系统具有CPU、存储器、用于将IO设备与总线相连的IO桥以及仿真另一个系统中IO桥的伪IO总线桥,该操作控制方法包括步骤在单机配置期间,使伪IO总线桥保持另一个系统的IO桥的初始设置信息;形成冗余配置;以及在冗余配置期间,将伪IO总线桥从总线断开,并将伪IO总线桥保持的初始设置信息复制到所述另一个系统的IO桥。
根据本发明的程序是一种用于执行故障容许系统的操作控制方法的程序,所述故障容许系统包括通过总线互连的第一和第二计算机系统,以形成冗余配置,每一个系统具有CPU、存储器、用于将IO设备与总线相连的IO桥以及仿真另一个系统中IO桥的伪IO总线桥,该程序包括处理在单机配置期间,使伪IO总线桥保持另一个系统的IO桥的初始设置信息;形成冗余配置;以及在冗余配置期间,将伪IO总线桥从总线断开,并将伪IO总线桥保持的初始设置信息复制到所述另一个系统的IO桥。


图1是根据本发明的系统配置图;图2是利用图1中配置的故障容许计算机系统的一个示例;图3是说明图2中操作的流程图;图4是利用图1中配置的故障容许计算机系统的另一个示例;以及图5是利用图1中配置的故障容许计算机系统的另一个示例。
具体实施例方式
下面将参考附图来说明本发明的实施例。图1示出了单个计算机系统配置,以配置根据本发明的故障容许系统。CPU 11和存储器12与主控制器21相连,主控制器21与总线100相连。与总线100相连的IO桥23可以与支持热插拔的设备相连,或与用于连接热插拔支持设备的其它IO桥40、41相连。
将总线(通过单个桥层与CPU 11相连的总线)100被配置为一个桥LSI 20中的虚拟总线,桥LSI 20包括主控制器21和IO桥23。此外,伪IO桥25与虚拟总线100相连。该伪IO桥25是一种在桥LSI 20中设置的逻辑设备,具有保持用于IO桥实体的设置信息的功能。该设置信息至少是配置信息(例如设备标识信息)和存储器空间分配信息。由OS预设该设置信息的初始值。
如下参考图2到3所述,通过与另一个系统(图2中的系统B)相连以进行双工操作,当连接了IO桥的对应实体(图2中的IO桥23B)时,该伪IO桥25从总线100断开并且不能被识别。在该双工操作中,与系统(B)共享总线100。
传统桥22和伪传统桥24与总线100相连,传统总线资源30与传统桥22相连。边带通信线101使主控制器21能够不通过总线100来访问伪IO桥25或伪传统桥24。
因此,主控制器21通过边带通信线101访问由伪IO桥25保持的初始设置信息,并且所述初始设置信息被复制到另一个系统中IO桥的实体。
图2是将图1的系统用作系统A、B的一种双工系统。在图2中,与图1相同的系统A中的组件由带“A”的相同数字表示,而系统B中的相同组件由图1中带“B”的相同数字表示。
通过将桥LSI 20A与桥LSI 20B相连,每一个系统中的CPU 11A、11B能够通过虚拟总线100访问IO桥23A、23B和IO设备41A、41B下的IO桥23A、23B和IO桥40A、40B。
通过按照相同的时钟周期执行相同的处理,每一个系统A、B的CPU 11A、11B,存储器12A、12B和主控制器21A、21B作为一个系统中的CPU进行操作(虚线所示的区域;对于图4、5是一样的)。
当系统作为双工配置运行时,由于IO桥实体中的信息设置改变,伪IO桥25A进行操作,以便监视到相连的系统B中IO桥23B的实体的访问,以保持IO桥23B的该实体的配置信息设置,以便将IO桥23B的实体的最近设置信息复制到伪IO桥25A。
另一方面,伪IO桥25B还监视到相连的系统A中IO桥23A的实体的访问,以保持IO桥23A的该实体的配置信息设置。
即使连接了IO桥的实体且总线100不能识别每一个IO桥25A、25B,主控制器21A、21B仍可以通过边带通信101来访问由每一个IO桥25A、25B保持的配置信息。如上所述,这能够将每一个伪IO桥的设置信息复制到IO桥的各自实体。或者,对于到IO桥的读取访问,伪IO桥进行响应,对于写入访问,伪IO设备进行监视,并将访问还发送到实体IO桥,从而能够简化用于将由伪IO桥保持的配置信息复制到IO桥的实体的操作。
参考图3,说明了利用图1的系统来形成图2所示双工配置的操作。首先,在加电时,仅存在图1的配置或系统A(步骤S1)。由作为OS中基本软件的BIOS(基本输入/输出系统)来完成到这里包括IO桥24A的IO设备41A的存储器资源分配(步骤S2)。
这里,如图2所示,在双工操作处设置到伪IO桥25A的存储器空间分配,以便分配足够的容量,包括IO桥实体23B下相连的设备和新近相连的设备所需的存储器空间。OS启动之后,还使用这里分配的存储器空间。
如图1的情况所示,在加电之后,假设其中启动OS的系统是系统A,当连接系统B时,形成图2的冗余配置(步骤S3)。利用系统A和B之间的连接,通过BIOS调用(步骤S4),其中没有示出来自连接控制器的中断通知,BIOS进行系统A和B之间总线100的连接(步骤S5)。例如,该连接控制器是主板上的电路,用于控制例如PCI(外围部件互连)热插拔控制器的IO接口的火线的插入和拔出,这是一种公知电路,因此不再进行说明。
这里,系统A中的伪IO桥25A从总线100断开,相反系统B中的IO桥23B的实体相连(步骤S6)。然后,主控制器通过从边带通信101读取系统A中伪IO桥25A中设置的设置值来进行初始化,并将设置值复制到系统B中IO桥23B的实体(步骤S7)。对于系统B中的伪IO桥和系统A中的IO桥的实体也是一样的。
该处理之后,调用用于OS的PnP控制软件(步骤S8),仅对于IO桥下设备,由于软件不能识别IO桥的配置变化,由PnP控制软件执行搜索或存储器资源分配(S9)。
在PC/AT(个人计算机/高级技术)架构中,作为主控制器21A、21B的功能,由于传统桥22A、22B和传统总线资源30A、30B需要在系统中是单一的,控制到传统桥22A、22B和传统总线资源30A、30B的访问,以便发送传统桥/传统总线资源。
由于传统桥/传统总线资源在系统中是单一的并且必须在系统中存在,当由于故障等不能使用传统桥22A、22B或传统总线资源30A、30B的实际实体时,或为了维护、更换等将其去除时,伪传统桥24A、24B能够可选地执行传统桥/传统总线资源的功能,直到切换主控制器21A、21B的访问。
按照这种方式,在双工系统中,如果将与虚拟总线100相连并且彼此对应的IO桥作为伪IO桥集成到每一个系统中,并且物理上断开系统,伪IO桥能够仿真另一个系统中实际的IO桥,从而可以就像所谓的PnP事件没有发生一样进行操作。
此外,通过在出现连接和断开的虚拟总线上提供伪IO桥,所述伪IO桥与受到虚拟总线的连接或断开影响的实际IO桥相对应,隐藏了IO桥的动态连接和断开,对于所述动态连接和断开,不可能利用标准PnP软件自由地分配存储器空间。由于在加电时将足够的存储器资源分配给IO桥,可以将需要的存储器资源分配给与桥相连的设备,而无需修改OS或其标准PnP控制软件。
接下来,将说明根据本发明的另一个实施例。在图1中,伪IO桥25能够实现最小功能,以便通过标准PnP软件来分配存储器空间。或者,伪IO桥25能够实现实际设备的全部或部分功能,从而临时执行实际设备的功能。
在图1中,尽管将主控制器21、IO桥23和伪IO桥24集成到一个LIS 20中,还可以将每一个IO桥和伪IO桥作为另一个外部LSI与LSI 20相连。
在图2中,尽管通过从边带通信101读取在系统A的伪IO桥25A中设置的设置值并将其复制到系统B中的IO桥23B的实体,还可以通过以下操作,利用总线100来执行复制提供功能,以便临时将系统A中的伪IO桥25A传输到与系统B中的IO桥23B的实体不同的设备或功能。
利用与图2相同的参考数字来表示相同组件的图4示出了根据本发明的另一个实施例。在图4中,与系统A相连的是伪IO桥25A和伪IO桥32A,伪IO桥25A用作系统B中的IO桥23B,伪IO桥32A用作IO桥40B,IO桥40B接下来与系统B中的IO桥23B相连。按照这种方式,在IO桥以多级方式相连的配置中,如果预先限定了系统的配置,可以按照多级方式来连接伪IO桥。通过添加功能以便对于每一个IO桥使伪IO桥的功能无效,还可以形成如图2所示的配置。
在图5中,在三重配置中设置系统冗余。系统A中的每一个伪IO桥25A、26A分别与系统B、C中的IO桥23B、23C的实体相对应。类似地,系统B中的每一个伪IO桥25B、26B分别与系统A、C中的IO桥23A、23C的实体相对应,以及系统C中的每一个伪IO桥25C、26C分别与系统A、B中的IO桥23A、23B的实体相对应。
按照这种方式,可以根据每一个系统中伪IO桥的数目来增加系统冗余。此外,通过对于每一个伪IO桥添加无效功能,可以根据系统冗余来形成配置。
如上所述,在根据本发明的故障容许计算机系统中,通过双重构造执行固定步骤操作的CPU硬件并形成冗余配置(例如软件RAID1),同时保持包括通用CPU和通用OS的结合的系统配置(这里,通常是PC/AT架构),能够构造高可靠性计算机系统。
此外,为了在断开冗余CPU或用于维护、更换等的冗余IO控制器时不会失去系统的可用性,利用将边界设为逻辑总线或物理总线的通用PnP/热插拔控制软件,能够连接硬件资源,从而形成冗余,或断开冗余硬件资源,以便能够提供高可靠性和高可用性的故障容许计算机系统,而无需修改已有的通用OS功能。
显然,通过计算机可读程序(软件)来实现图3所示的操作流程。
本发明的第一个优点在于,提供了双重具有不支持PnP的IO空间的IO设备。这是因为即使硬件实体在物理上断开,通过使设备虚拟,软件可以将不支持另外必须存在于系统中的PnP的IO设备识别为始终存在的设备。结果,无需使用PnP控制软件,通过BIOS(基本输入/输出系统)控制能够容易地实现冗余配置。
本发明的第二个优点在于,对于具有多级IO桥的系统中的PnP控制,可以使用用于通用OS的PnP控制软件。这是因为在系统双工操作之前,通过使PnP虚拟地与IO桥相连,BIOS能够预先保留足够的存储器资源。结果,利用用于通用OS BIOS的PnP控制软件,能够容易地形成冗余配置。
本发明的第三个优点在于,通过软件能够使用通用OS,而无需考虑双工操作软件。这是因为由于每一个系统的CPU通过固定步骤操作来执行相同操作,软件不需要考虑CPU双工操作,对于双工操作之间和之后的每一个系统,由软件识别的系统的桥配置始终是相同配置。结果,利用通用OS能够容易地形成冗余配置。
权利要求
1.一种计算机系统包括CPU、存储器、总线和用于将IO设备与总线相连的IO桥,其中,计算机系统包括伪IO总线桥,在另一个系统与总线相连的冗余配置期间,伪IO总线桥从总线断开,并且在其它系统从总线断开的单机配置期间,伪IO总线桥保持IO桥的设置信息,以仿真所述其它系统的IO桥。
2.根据权利要求1所述的计算机系统,其特征在于还包括分配装置,用于在单机配置期间,响应加电,将存储器空间分配到伪IO桥。
3.根据权利要求1所述的计算机系统,其中,伪IO桥保持其它系统的IO桥的初始设置信息。
4.根据权利要求3所述的计算机系统,其特征在于还包括复制装置,用于在冗余配置期间,将由伪IO桥保持的初始设备信息复制到所述其它系统的IO桥。
5.根据权利要求1所述的计算机系统,其特征在于,伪IO桥保持所述其它系统中IO桥的最近设置信息。
6.一种故障容许系统,其特征在于,将根据权利要求1到5之一所述的计算机系统配置为冗余配置。
7.一种故障容许系统的操作控制方法,所述故障容许系统包括通过总线互连的第一和第二计算机系统,以形成冗余配置,每一个系统具有CPU、存储器、用于将IO设备与总线相连的IO桥以及仿真另一个系统中IO桥的伪IO总线桥,所述方法包括步骤在单机配置期间,使伪IO总线桥保持另一个系统的IO桥的初始设置信息;形成冗余配置;以及在冗余配置期间,将伪IO总线桥从总线断开,并将伪IO总线桥保持的初始设置信息复制到所述另一个系统的IO桥。
8.根据权利要求7所述的操作控制方法,其特征在于还包括步骤在单机配置期间,响应加电,将存储器空间分配到伪IO桥。
9.根据权利要求7所述的操作控制方法,其特征在于还包括步骤在冗余配置期间,伪IO桥保持所述另一个系统的IO桥的最近设置信息。
10.一种用于执行故障容许系统的操作控制方法的程序,所述故障容许系统包括通过总线互连的第一和第二计算机系统,以形成冗余配置,每一个系统具有CPU、存储器、用于将IO设备与总线相连的IO桥以及仿真另一个系统中IO桥的伪IO总线桥,所述程序包括处理在单机配置期间,使伪IO总线桥保持另一个系统的IO桥的初始设置信息;形成冗余配置;以及在冗余配置期间,将伪IO总线桥从总线断开,并将伪IO总线桥保持的初始设置信息复制到所述另一个系统的IO桥。
全文摘要
本发明提供了一种高可靠性容许计算机系统,能够构造使用PnP软件的冗余配置。在双工系统中,将与虚拟总线相连并且彼此对应的IO桥的实体(实际IO桥)集成到系统中,作为伪IO桥,因此,如果系统物理上彼此断开,通过在另一个系统中仿真实际IO桥,伪IO桥能够好像在IO桥自身中没有发生所谓的PnP事件一样进行操作。
文档编号G06F11/16GK1790283SQ20051002285
公开日2006年6月21日 申请日期2005年12月12日 优先权日2004年12月13日
发明者水谷文俊 申请人:日本电气株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1