Abstract:
There is disclosed a system equipped with information processors of control and standby systems interconnected to communicate with each other. The information processor of the control system executes a POST operation and a starting operation (S 101  to S 103 ), and instructs execution of a POST operation to the information processor of the standby system after completion of the starting operation (S 104 ). Meanwhile, the information processor of the standby system monitors an operation of the control system (S 106 ), executes the POST operation upon reception of the instruction from the control system (S 107 ), and requests synchronization with its own device to the information processor of the control system upon completion of the POST operation (S 108 ). The information processor of the control system copies information regarding the starting operation executed by its own device upon reception of the synchronization request, thereby starting a synchronous operation with the device (S 109  to S 110 ). Thus, the system that uses a dual platform technology is easily started.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a duplex platform system equipped with an information processor which becomes a control system started at the time of running the system and an information processor which becomes a standby system set on standby for starting, and more particularly to a starting control method and an information processor of the system. 
     2. Description of the Related Art 
     Conventionally, to prevent a stop of a system caused by a fault of an information processor incorporated in the system, there has been known a duplex platform technology which incorporates a pair of information processors in the system, starts one of them as a control system, and sets the other processor on standby as a standby system to be used instead when the control system fails. The system that uses this technology generally has a configuration shown in  FIG. 6 . A system  4  (shown) includes devices  1  and  2  which are information processors interconnected to communicate with each other, and a power supply control section  3  which supplies power to these devices. 
       FIG. 7  shows an operation procedure in the system  4  at the time of starting. In the shown procedure, the device  1  is set as a control system while the device  2  is set as a standby system as an example. When power is supplied from the power supply control section  3  to start running of the system  4 , the devices  1  and  2  perform power-on-self-test (POST) operations in synchronization to self-diagnose faults of hardware, thereby determining a success of starting. The devices  1  and  2  wait for completion of each other&#39;s POST operation, and execute OS starting operations in synchronization upon completion of both POST operations. Additionally, after waiting for completion of the OS starting operations, the devices  1  and  2  start drivers of peripheral devices in synchronization. Upon an end of the waiting for driver starting, the process proceeds to application operations carried out in synchronization by the devices  1  and  2 . 
     During the execution of the above processing, the devices  1  and  2  use watchdog timers (WDT) for monitoring CPU operations in accordance with periodic updating instructions from CPU&#39;s to monitor whether the POST operations, the starting operations and the driver starting are executed normally or not. 
     An example of a conventional technology that uses the duplex platform technology is described in Patent Document 1 below. According to the technology described in the Patent Document 1, in two synchronously run CPU&#39;s of a duplex computer system, a monitoring time of a watchdog timer of a standby side is set longer than that of a control side so that a similar stop of the standby side can be prevented after the control side stops due to a timeout. 
     Patent Document 1: JP-A-11-175108 
     However, the conventional system has a problem that it is difficult to shorten a time from the supplying of power to the transfer to the application operations because of the synchronous executions of the operations such as POST operations or OS starting operations between the control system and the standby system. In the case of implementing the conventional system, as each operation needs a waiting step, a general program for causing the CPU to continuously execute a series of starting operations cannot be directly used as a program for starting. In consequence, to introduce the duplex platform technology, work such as changing of the general program or creation of an independent program is necessary regarding starting. 
     SUMMARY OF THE INVENTION 
     The present invention has been developed with the foregoing problems in mind, and it is an object of the invention to provide a method capable of easily starting a system which uses a duplex platform technology. 
     A starting control method according to the present invention is a starting control method of a pair of information processors which are interconnected to communicate with each other and set to different systems of a control system started at the time of running and a standby system set on standby for starting at the time of running, comprising causing each of the information processors to set a system of its own device based on system history of past running times when power is supplied to the pair of information processors; causing the information processor of the control system to execute a POST operation and a starting operation for determining a success of starting of its own device, and to instruct execution of a POST operation to the information processor of the standby system after completion of the starting operation; causing the information processor of the standby system to execute the POST operation in accordance with the instruction, and to request synchronization with its own device to the information processor of the control system upon completion of the POST operation; and causing the information processor of the control system to copy information regarding the starting operation executed by its own device upon reception of the synchronization request, thereby starting a synchronous operation with the device. 
     A dual platform system according to the present invention comprises a pair of information processors which are interconnected to communicate with each other and set to different systems of a control system started at the time of running and a standby system set on standby for starting at the time of running, wherein each of the information processors includes a monitoring section to set a system of its own device based on system history of past running times when power is supplied and to monitor operations of its own device and the other device based on the set system, and a control section to execute an operation corresponding to the system set by the monitoring section; the control section executes a POST operation and a starting operation for determining a success of starting of its own device when its own device is set to the control system, and instructs execution of a POST operation to the other device of the standby system after completion of the starting operation; the control section executes the POST operation in accordance with an instruction from the other device of the control system when its own device is set to the standby system, and requests synchronization with its own device to the other device of the control system upon completion of the POST operation; and the monitoring section copies information regarding the starting operation executed by its own device upon reception of the synchronization request from the other device of the standby system when its own device is set to the control system, thereby starting a synchronous operation with the device. 
     An information processor according to the present invention is an information processor set to one of a control system started at the time of running and a standby system set on standby for starting at the time of running and connected to communicate with the other information processor set to the other system, comprising a monitoring section which sets a system of its own device based on system history of past running times when power is supplied and monitors operations of its own device and the other device based on the set system; and a control section which executes an operation corresponding to the system set by the monitoring section, wherein the control section executes a POST operation and a starting operation for determining a success of starting of its own device when its own device is set to the control system, and instructs execution of a POST operation to the other device of the standby system after completion of the starting operation, the control section executes the POST operation in accordance with an instruction from the other device of the control system when its own device is set to the standby system, and requests synchronization with its own device to the other device of the control system upon completion of the POST operation, and the monitoring section copies information regarding the starting operation executed by its own device upon reception of the synchronization request from the other device of the standby system when its own device is set to the control system, thereby starting a synchronous operation with the device. 
     According to the present invention, as the information processor of the control system to which power has been supplied instructs a POST operation to the device of the standby system upon completion of the POST operation or the starting operation to implement synchronization, synchronous executions of a series of starting operations between the two devices are made unnecessary. As a result, it is possible to shorten a time necessary for starting by an amount equivalent to an unnecessary waiting step during starting, and to use a general program for continuously executing a series of starting operations. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram showing a configuration of a duplex platform system according to an embodiment of the present invention; 
         FIG. 2  is a flowchart showing a system setting procedure according to the embodiment; 
         FIG. 3  is an explanatory diagram of a basic operation according to the embodiment; 
         FIG. 4  is a flowchart showing an operation of a control system according to the embodiment; 
         FIG. 5  is a flowchart showing an operation of a standby system according to the embodiment; 
         FIG. 6  is a block diagram showing a configuration of a conventional system; and 
         FIG. 7  is an explanatory diagram of a basic operation of the conventional system. 
     
    
    
     DESCRIPTION OF THE PREFERRED EMBODIMENT 
     Next, the preferred embodiment of the present invention will be described in detail with reference to the accompanying drawings.  FIG. 1  is a block diagram showing a configuration of a dual platform system according to an embodiment of the present invention. A system  100  of the embodiment includes devices  10  and  20  which become a pair of information processors to implement a dual platform technology, a power supply control section  50  for supplying ON/OFF information of a power supply button and power to these devices  10  and  20 , and a synchronous management bus  30  and a system monitoring bus  40  for interconnecting the devices  10  and  20 . As in the case of the conventional system, one of the devices  10  and  20  is operated as a control system while the other is operated as a standby system at the time of running the system  100 . 
     The devices  10  and  20  are identical in configuration. As shown in  FIG. 1 , the device  1  includes a monitoring section  11  for setting a system of its own device to monitor operations of its own device and the other device, and a control section  12  for executing processing corresponding to the system set by the monitoring section  11 . The control section  12  is constituted of a CPU  13 , a memory  14 , and an input/output processor (IOP)  15 . The CPU  13  uses the memory  14  and the IOP  15  to execute program processing corresponding to the control and standby systems described below. 
     The monitoring section  11  is a device for monitoring operations of the information processor, i.e., a baseboard management controller (BMC), and constituted of a starting history storage section  16  for storing starting history indicating systems of its own device at previous running times, a WDT section  17  which performs a conventionally known watchdog timer function to monitor an operation of the CPU  13 , and a starting monitoring section  18  for determining a system of its own device based on the starting history and monitoring its own device and the other device by using a starting monitoring signal  19  described below. 
     The device  20  includes components corresponding to those of the device  10 , i.e., a control section  22  constituted of a CPU  23 , a memory  24  and an IOP  25 , and a monitoring section  21  constituted of a starting history storage section  26 , a WDT section  27 , and a starting monitoring section  28 . 
     The devices  10  and  20  synchronize the CPU&#39;s  13  and  23  with each other through the synchronous management bus  30 , and transfer staring monitoring signals ( 19 ,  29 ) or the like between the monitoring sections  11  and  21  through the system monitoring bus  40 . 
     For the starting monitoring signal  19 , as signals for monitoring the systems, an own device stating form indicating signal (PRML) for indicating a system of its own device, and the other device starting form indicating signal (PRMR) for determining a system of the other device are provided. As signals for monitoring presence of operations, an own device starting state indicating signal (RDYL) for indicating an operation situation of its own device and the other device starting state indicating signal (RDYR) for determining an operation situation of the other device are provided. 
     Each of the PRML and the PRMR for monitoring the systems indicates that the device is a control system when its value is “1”, and that the device is a standby system when its value is “0”. Each of the RDYL and RDYR for monitoring the operation situations indicates that the device is being operated when its value is “1”, and that the device is not being operated when its value is “0”. For example, when the PRML and the RDYL of the device  10  side are both “1”, it indicates that the device  10  is being operated as a control system. At this time, in the other device  20 , the PRMR and the RDYR indicating states of the device  10  are similarly “1”. Based on these values, the device  20  recognizes that the device  10  is being operated as the control system. Simultaneously, a message that the device  20  is a standby system of an unoperated state is given from the device  20  of the standby system to the device  10  of the control system in accordance with the aforementioned mechanism. 
     Hereinafter, an operation procedure of the system  100  will be described. First, a procedure up to setting of systems of their own by the devices  10  and  20  will be described by referring to a flowchart of  FIG. 2 . In the system  100 , when the power supply button is pressed to start its running, it is announced from the power supply control section  50  to the devices  10  and  20  (step S 1 ). 
     The monitoring sections  11  and  21  of the devices  10  and  20  refer to starting history of the starting history storage sections ( 16 ,  26 ) (step S 2 ) to determine systems of their own to be set this time based on systems set in the past. According to the embodiment, a last system of a previous running time is determined (step S 3 ). If a result shows an end of the previous running time as a control system, “1” is set in the PRML and a PDTL of the starting monitoring signals ( 19 ,  29 ) to start running as a control system again this time (step S 4 ). Hence, it is indicated that an own device is operated as a control system at a present time. 
     If a result shows an end of the previous running time as a standby system, “0” is set in the PRML and the PDTL of the starting monitoring signals ( 19 ,  29 ) to indicate that an own device is an unoperated standby system (step S 5 ). Then, monitoring of a situation of the other device of the control system is started by using the PRMR and an RDTR of the starting monitoring signals ( 19 ,  29 ) (step S 6 ). Through this procedure, the systems are set in the devices  10  and  20 . 
     The system setting can be simplified by employing a method of applying a last system of a previous running time as in the case of the embodiment. However, this method is not the only way. For example, another method based on starting history may be employed, which determines a system of a longer setting period at a past running time to set it as a current system. 
       FIG. 3  schematically shows basic operations of the control and standby systems in the system  100 . As an example, the device  10  will be set as a control system, and the other device  20  will be set as a standby system. The basic operation of each system will be described in accordance with the procedure (shown). First, the monitoring section  11  of the control device  10  of the control system instructs the CPU  13  to start a program, and monitors the operation of the CPU  13  through the WDT section  17 . That is, it is determined that the CPU  13  is normally operated while the WDT section  17  is periodically updated by the CPU  13 . When a timeout is reached without updating the WDT section  17  at a predetermined time, it is determined that the operation of the CPU  13  is abnormal. 
     Upon reception of the program starting instruction from the monitoring section  11 , the CPU  13  sequentially executes a series of starting operations including a POST operation for diagnosing permission of starting (step S 101 ), an OS starting operation (step S 102 ), and a starting operation of each driver of a peripheral device (step S 103 ). During this period, the CPU  13  updates the WDT  17 , and the monitoring section  11  monitors a timeout of the WDT section  17  (WDT monitoring a to c). As long as no timeout occurs, the CPU  13  continuously executes the POST operation, the OS starting operation, and the driver starting operation. 
     Upon completion of the starting of the driver, the monitoring section  11  announces a starting instruction to the device  20  through the system monitoring system  40  to incorporate the device  20  of the standby system, i.e. to synchronize with the device  20  (step S 104 ). At this time, the CPU  13  starts its operation by an application program (step S 105 ). 
     While the device  10  executes the aforementioned procedure as the control system, in the device  20  of the standby system, the monitoring section  21  refers to the PRMR and the RDRT of the starting monitoring signal  29  to monitor a state of the device  10  (step S 106 ). The monitoring section  21  that has received the starting instruction from the device  10  instructs the CPU  23  of its own device to start a program, and an operation of the CPU  23  is monitored by the WDT section  27 . The CPU  23  that has received the instruction to start the program executes a POST operation (step S 107 ). When the POST operation is completed, the monitoring section  21  announces a synchronization request to the device  10  of the control system (step S 108 ). 
     Upon reception of the request from the device  20 , the device  10  interrupts the execution of the application program to perform a synchronization operation, and copies information indicating the operation situation of the CPU  13  up to a present time, i.e., information set after the POST operation of the step S 101 . Accordingly, the device  20  of the standby system is set in an operation environment after starting completion as in the case of the device  10  of the control system. Then, the device  10  of the control system simultaneously resumes the program processing of its own device and the program processing of the standby system (step S 109 ). Thereafter, the system  100  is run by synchronous operations between the devices (step S 110 ). 
     According to the aforementioned procedure, the device of the control system to which the power has been supplied starts the device of the standby system to execute synchronization, making it unnecessary to synchronize the devices with each other when the series of starting operations are carried out. As a result, a waiting step during stating is made unnecessary to enable shortening of a time for starting. Moreover, it is possible to use a general program for continuously executing a series of starting operations. 
     Next, an operation procedure that takes an operation abnormality of the CPU into consideration in the system  100  will be described.  FIG. 4  is a flowchart showing an operation procedure of the control system. Hereinafter, the procedure of  FIG. 4  will be described on the assumption that the control system is set in the device  10  in the step S 4  of  FIG. 2 . 
     The device  10  of the control system executes a POST operation (step S 11 ). When the POST operation is completed before a timeout of the WDT section  17  (step S 12 ; Yes), a normal end of the POST operation by the CPU  13 , i.e., permission of starting, is determined to execute an OS starting operation (step S 13 ). Subsequently, when the OS starting operation is completed before a timeout (step S 14 : Yes), normal starting of the OS is determined to start the driver (step S 15 ). Upon normal starting of the driver (step S 16 : Yes), a starting instruction is announced to the device  20  of the standby system (step S 17 ). Thereafter, a procedure of starting an operation by an application program (step S 18 ) and executing a synchronizing operation to meet a request from the standby system (steps S 19 , S 20 ) is similar to that described above with reference to  FIG. 3 , and thus detailed description thereof will be omitted. 
     On the other hand, when an operation abnormality of the CPU  13  occurs in one of the POST operation, the OS starting operation, and the driver starting operation, and the WDT section  17  is not updated periodically as prescribed, the monitoring section  11  detects a timeout of the WDT section  17  (steps S 12 , S 14 , S 16 : No). The monitoring section  11  that has detected the timeout changes values of the RPML and the RDYL of the starting monitoring signal  10  from “1” to “0”, thereby changing its own device to an unoperated standby system (step S 21 ). 
       FIG. 5  shows an operation procedure of the standby system. The procedure (shown) corresponds to the procedure executed after the change of the device  10  to the standby system in the step S 21  ( FIG. 4 ). In this case, however, description will be made by assuming that the other device  20  first sets the standby system in the step S 5  of  FIG. 2 , and this device  20  executes the procedure of  FIG. 5 . 
     In the device  20  of the standby system, the monitoring section  21  refers to the PRMR and the RDYR of the starting monitoring signal to monitor a situation of the device  10  of the control system (step S 31 ). While the device  10  is a control system, “1” is set in each of the RPMR and RDYR of the starting monitoring signal  29 . While the PRMR and the RDYR are “1” (step S 32 : No), the monitoring section  21  monitors presence of a starting instruction ( FIG. 4 : step S 17 ) from the device  10  of the control system (step S 33 ). 
     Upon reception of the starting instruction from the device  10 , the monitoring section  21  executes a POST operation (step S 34 ). If it is completed before a timeout of the WDT section  27  (step S 35 : Yes), a synchronization operation is requested to the device  10  of the control system (step S 36 ). If the POST operation is not completed, and a timeout of the WDT section  27  is detected (step S 25 : No), a message that the device  20  cannot be normally operated as the standby system because of an abnormality is output (step S 37 ). 
     While monitoring the state of the control system (step S 31 ), upon detection of changes of the RPMR and the RDYR of the starting monitoring signal  29  from “1” to “0”, the monitoring section  21  recognizes a change of the device  10  from the control system to the standby system (step S 32 : Yes). At this time, the monitoring section  21  changes values of the RPML and the RDYL indicating a situation of its own device from “0” to “1”, thereby indicating a change of the device  20  from the unoperated standby system to the control system which is being operated (step S 38 ). Thereafter, the device  20  is operated in accordance with the procedure of the control system described above with reference to the flowchart of  FIG. 4 . 
     When the device is changed from the control system to the standby system, even if its cause is an abnormality of the POST operation, the POST operation is tried again after the change to the standby system ( FIG. 5 : step S 34 ). However, if the problem of the previous POST operation has been solved by this time, the POST operation is completed without any timeout (step S 35 : Yes). An example in which retrial of a POST operation after a change is successful is a case in which an illegal operation to be solved with a passage of time occurs, such as an illegal operation by an influence of external noise or an increase of an environmental temperature, or an illegal operation by an influence of residual charges caused by a short switching interval from power OFF to ON. 
     According to the aforementioned procedure, when a CPU abnormality occurs while the device of the control system executes a series of starting operations, the other device of the standby system is changed to the control system to start a series of starting operations. Thus, the series of starting operations can be continued by one of the devices without interrupting system starting. As a result, it is possible to quickly start the system.