EP1720097A1 - Firmware version managing method and computer system - Google Patents

Firmware version managing method and computer system Download PDF

Info

Publication number
EP1720097A1
EP1720097A1 EP05253488A EP05253488A EP1720097A1 EP 1720097 A1 EP1720097 A1 EP 1720097A1 EP 05253488 A EP05253488 A EP 05253488A EP 05253488 A EP05253488 A EP 05253488A EP 1720097 A1 EP1720097 A1 EP 1720097A1
Authority
EP
European Patent Office
Prior art keywords
version
partition
system board
firmware
storage unit
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
EP05253488A
Other languages
German (de)
French (fr)
Other versions
EP1720097B1 (en
Inventor
Kazuhiro Fujitsu Limited Yuuki
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Publication of EP1720097A1 publication Critical patent/EP1720097A1/en
Application granted granted Critical
Publication of EP1720097B1 publication Critical patent/EP1720097B1/en
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

Definitions

  • the present invention relates to a firmware version managing method of a computer system having a plurality of partitions in which a plurality of operation systems can be operated, and an information processing device having a plurality of partitions in which a plurality of operation systems can be operated.
  • the first method of exchanging a system board is to design a new board, necessarily exchanging the entire hardware, and require a larger number of steps than the second method of loading new firmware in designing and loading processes. Normally, when a board is exchanged or new firmware is loaded after a computer system is implemented and then modified, loading new firmware requires a shorter processing time.
  • the firmware to be implemented in the system board is the latest version. However, it is not necessarily the latest version of firmware implemented in the current system board.
  • Patent Document 1 Japanese Published patent Application No. 2002-358209
  • Patent Document 2 Japanese Published Patent Application No. 2004-21463 .
  • Patent Document 1 describes the method of efficiently performing a rewriting operation to update the version of firmware by determining whether or not the existing version and the latest version of the firmware for control of the output of information equipment match each other, updating the version to the latest version when they do not match, and selecting the latest version or the existing version and performing output processing depending on a result of the update.
  • Patent Document 2 describes the method of loading the optimum replacing firmware in the system configuration of the current peripheral device and the host computer from an automatically specified place when the driver is activated so that the firmware can be optimally updated.
  • the present invention aims at automatically updating the firmware to the optimum version when the system board is exchanged, etc.
  • the present invention envisages a firmware version managing method of a system board of a computer system having a plurality of partitions in which a plurality of operating systems can be operated and each partition is configured by one or more system boards, associates the version of the firmware being used in each partition with each partition and stores the association result in a partition-specific version storage unit, determines when the system board is exchanged whether or not the version of the firmware of the newly used system board matches the version of the firmware of the corresponding partition stored in the partition-specific version storage unit, and updates the firmware of the newly used system board to the same version as the firmware of the partition stored in the partition-specific version storage unit.
  • the firmware of the system board can be automatically updated to the version of the firmware of the partition in which the system board is used.
  • firmware version managing methods using the present invention when the information about the partition assigned to each system board is stored in the system board configuration information storage unit, and the system board is exchanged, the information in the system board configuration information storage unit is referred and the partition of the system board to be exchanged is designated, the version of the firmware of the designated partition is obtained from the partition-specific version storage unit, and the firmware of the newly used system board is changed to the same version as the obtained firmware.
  • the partition assigned to the system board to be exchanged is designated according to the information stored in the system board configuration information storage unit in order automatically to update to the firmware of the version which is the same as the version of the firmware being used in the designated partition.
  • firmware version managing methods using the present invention when the board identification information for identification of the system board is stored in the system board configuration information storage unit, the firmware of the latest version is stored in the latest version storage unit, and the new partition is set and the new system board is used, the board identification information about the newly used system board is compared with the board identification information stored in the system board configuration information storage unit and it is determined whether or not the system board has not been registered. If the newly used system board has not been registered, then the firmware of the newly used system board is changed to the firmware of the latest version stored in the latest version storage unit.
  • the firmware of the system board can be automatically updated to the firmware of the latest version.
  • the system board includes a first non-volatile memory storing the firmware of the version being used in the currently assigned partition, and a second non-volatile memory storing the firmware of the version used in the exchanged-to partition, and exchanges between the first and second non-volatile memory when the assigned-to partition of the system board is exchanged.
  • firmware version managing methods of the present invention if an abnormal operation occurs as a result of updating the version of the firmware of the system board of the specific partition, then the version of the firmware of the system board of the specific partition in which the abnormal operation occurs is returned to the old version of the firmware of the specific partition stored in the partition-specific version storage unit with each partition kept in the active state.
  • firmware version managing methods using the above-mentioned invention when the firmware of a plurality of versions is stored in the backup storage unit, and the system board is exchanged, the version of the firmware of the newly used system board is compared with the version of the firmware of the corresponding partition stored in the partition-specific version storage unit. If the versions do not match each other, the version of the firmware of the partition is obtained from the partition-specific version storage unit, the firmware of the version is read from the backup storage unit, and the firmware of the newly used system board is changed to the firmware of the version read from the backup storage unit.
  • FIG. 1 shows the basic configuration of a computer system 11 relating to the present invention.
  • the computer system 11 has a plurality of partitions in which a plurality of operating systems can be simultaneously operated, and each partition is configured by one or more system boards 16a - 16n in which firmware is implemented.
  • the computer system 11 shown in Fig. 1 comprises: a partition-specific version storage unit 12 for storing each partition as associated with the versions of the firmware of the system boards 16a - 16n assigned to each partition; a system board configuration information storage unit 13 for storing a partition assigned to a system board associated with the board identification information for identification a system board; and a latest version storage unit 14 for storing firmware of the latest version.
  • the version change unit 15 compares the version of the firmware implemented in a newly used system board with the version of the firmware of the corresponding partition stored in the partition-specific version storage unit 12. If they do not match, the firmware of the newly used system board is changed to the same version as the firmware of the corresponding partition stored in the partition-specific version storage unit 12.
  • the version change unit 15 compares the board identification information about the newly used system board with the board identification information stored in the system board configuration information storage unit 13, and determines whether or not the system board has not been registered. If it has not been registered, the firmware of the newly used system board is updated to the latest version.
  • Fig. 2 shows the configuration of the central portion of a computer 21 (information processing device) according to an embodiment of the present invention.
  • the computer 21 has a plurality of partitions in which a plurality of operating systems can be simultaneously operated.
  • the computer 21 comprises a service processor board 22, and one or more system boards 23a, 23b, 23c, ... configuring a plurality of partitions.
  • the system boards 23a, 23b, 23c, ... are loaded with a CPU, memory, a controller, etc.
  • the service processor board 22 comprises a service processor (CPU) 24; rewritable non-volatile memory (FMEM) 25 comprising flash memory, etc. for storing a control program executed by the service processor 24; main storage memory 26; rewritable non-volatile memory 27 which comprises a disk device or flash memory, etc. and stores management information about the system boards 23a, 23b, 23c, ...; and a controller 28 for controlling the communication of data with the system boards 23a, 23b, 23c, ....
  • a service processor CPU
  • FMEM rewritable non-volatile memory
  • main storage memory 26 main storage memory
  • rewritable non-volatile memory 27 which comprises a disk device or flash memory, etc. and stores management information about the system boards 23a, 23b, 23c, ...
  • a controller 28 for controlling the communication of data with the system boards 23a, 23b, 23c, ....
  • a system board 23 refers to all the system boards 23a, 23b, 23c ... or a specific system board.
  • the system board 23 is loaded with two rewritable non-volatile memory (FRAM) 29a and 29b such as flash memory, etc.
  • the two non-volatile memories (FRAM) 29a and 29b store an initialization program (open boot program (OBP)) of the same or different versions.
  • the initialization program (OBP, firmware) performs a diagnosis on a system board, initialization, download of an OS from the disk device not shown in the attached drawings, etc.
  • non-volatile memory 29a and 29b for example, when a partition to which a system board is assigned is exchanged, the initialization program of the version being used in the currently assigned partition is stored in the non-volatile memory 29a, and the initialization program of the version used in the exchanged-to partition is stored in the other non-volatile memory 29b.
  • a quick exchange can be made to the version of the initialization program being used in the exchanged-to partition.
  • the non-volatile memory 27 of the service processor board 22 is configured by a partition-specific respective version number information storage unit 31, a system configuration information storage unit 32, a latest HCP (hardware control program) storage unit 33, and an initialization program (OBP) backup storage unit 34.
  • a partition-specific respective version number information storage unit 31 a system configuration information storage unit 32, a latest HCP (hardware control program) storage unit 33, and an initialization program (OBP) backup storage unit 34.
  • the partition-specific respective version number information storage unit 31 stores the information about the version (version number) of the initialization program used in each partition as associated with the partition number.
  • Fig. 3A shows the configuration of a partition-specific respective version number information 41 stored in the partition-specific respective version number information storage unit 31.
  • the partition-specific respective version number information 41 is configured by a set of data including: a partition number; a current version number of the initialization program of the system board 23 assigned to each partition; a bank-specific version number of an initialization program stored in the two non-volatile memory 29a and 29b of the system board 23; a current bank number indicating a bank 0 or 1 of the currently used bank; and the previous version number in the initialization program stored in the two banks.
  • the version of the current initialization program of the partition of the partition number of 0 is A
  • the two banks of the system board 23 assigned to the partition store the initialization program of the same version A
  • the currently used bank is the bank 1
  • no previous version number is stored.
  • the version of the current initialization program of the partition of the partition number of 1 is A
  • the bank 0 for example, corresponding to the non-volatile memory 29a
  • the bank 1 for example, corresponding to the non-volatile memory 29b
  • the version A is the previous version.
  • Fig. 3B shows the configuration of system board configuration information 42 stored in the system configuration information storage unit 32.
  • the system board configuration information 42 is configured by a set of data including: a system board number (SB number) designated in dependence on the position into which the system board 23 is inserted; a partition number assigned to each system board 23; and a board serial number (board identification information) uniquely assigned to each system board 23.
  • SB number system board number
  • board serial number board identification information
  • the board serial number of the system board configuration information 42 it is determined whether or not the system board 23 inserted into the position of a specific system board number is a new system board 23.
  • the latest hardware control program (HCP) storage unit 33 stores the initialization program of the latest version, the latest firmware of the service processor board 22, etc.
  • the initialization program (OBP) backup storage unit 34 stores several generations of initialization programs for backup.
  • Fig. 3C shows the configuration of an OBP backup information 43 stored in the OBP backup storage unit 34.
  • the OBP backup information 43 is configured as a set of data including: version number information indicating the version of an initialization program; "valid" indicating whether or not the initialization program can be rewritten; and an initialization program (firm information).
  • version number information indicating the version of an initialization program
  • valid indicating whether or not the initialization program can be rewritten
  • initialization program firm information
  • the initialization program implemented in the system board 23 can be rewritten into a desired version.
  • the initialization program of the version number not to be stored any more is set the validity as "invalid", thereby allowing the area to be overwritten when the storage capacity of the initialization program (OBP) backup storage unit 34 becomes short.
  • step S12 When the insertion of the system board 23 is detected and a system board exchanging event is received (S11 in Fig. 4), control is passed to step S12, and the following process is performed.
  • the system board number (for example, corresponding to the insertion position of the system board 23) is recognized from the position of the inserted system board 23, the system board configuration information 42 is referred to, and the board serial number corresponding to the system board number is obtained. Since the board serial number points to the board serial number of the system board 23 before the exchange, the serial number is compared with the input serial number of the system board 23.
  • step S13 it is determined whether or not the serial numbers match. If the serial numbers do not match (NO in S13), control is passed to step S14, the system board configuration information 42 is referred to, and the partition number corresponding to the system board number is obtained. Then, the version number (version) of the initialization program corresponding to the partition number obtained by referring to the partition-specific respective version number information 41 is obtained.
  • step S15 it is determined whether or not the version number of the initialization program implemented in the inserted system board 23 matches the version number of the initialization program being used in the corresponding partition.
  • step S16 the initialization program of the same version number as the initialization program being used in the corresponding partition is retrieved from the initialization program (OBP) backup storage unit 34, and the initialization program of the version number obtained in the retrieval is written to the non-volatile memory 29a or 29b of the newly inserted system board 23, thereby updating the initialization program.
  • OBP initialization program
  • the version number of the initialization program of the newly inserted system board 23 can be automatically updated so that the version number can match the version number of the initialization program of the partition assigned to the system board.
  • the operation of matching the version numbers of the initialization program is not required when the system board 23 is exchanged. Additionally, the occurrence of a malfunction caused by the non-matching version numbers of the initialization program of the system board 23 in the same partition can be prevented.
  • the partition number of the system board 23 is obtained from the system board configuration information 42. If it is found that the partition number is, for example, a partition number #0, then the version number of the initialization program (OBP) of the partition number #0 is obtained by referring to the partition-specific respective version number information 41 of the partition-specific respective version number information storage unit 31. If the version number of the initialization program is obtained, then the initialization program of the corresponding version number is downloaded from the initialization program (OBP) backup storage unit 34 (OBP of the version 1 in Fig. 5). Then, the initialization program of the version 1 downloaded to the non-volatile memory 29a or 29b of the system board 23 to be exchanged is written.
  • OBP initialization program
  • the version number of the initialization program of the system board 23 to be exchanged can be automatically updated so that it matches the version number of the initialization program being used in the partition to which the system board 23 is assigned.
  • Fig. 6 is a flowchart of the automated update process of the initialization program when a new partition is generated, and the system board 23 used in the new partition is expanded.
  • step S24 the version number of the initialization program (OBP) stored in the non-volatile memory (EMEM) 29a or 29b of the inserted system board 23 is read, and the version number of the initialization program is compared with the latest version of the initialization program stored in the latest HCP storage unit 33. Then, in the next step S25, it is determined whether or not the version numbers match.
  • OBP version number of the initialization program
  • EMEM non-volatile memory
  • step S26 If the version number of the initialization program of the newly inserted system board 23 does not match the latest version number (NO in S25), then control is passed to step S26, the initialization program of the latest version stored in the latest HCP storage unit 33 is read, and the initialization program of the latest version is written to the non-volatile memory 29a or 29b of the system board 23, thereby updating the initialization program.
  • step S23 If it is determined in step S23 that it is not the newly inserted system board 23 (NO in S23), or if it is determined in step S25 that the version number of the initialization program of the newly inserted system board 23 matches the version number of the latest version (YES in S25), the process terminates immediately.
  • the new system board 23 can be automatically updated to the initialization program of the latest version number.
  • the initialization program implemented in the system board 23 being used in the partition can be set to the latest version number.
  • Fig. 7 is a flowchart of the automated update process on the version number of the initialization program when a standby system board or the system board 23 assigned to a specific partition is dynamically exchanged to another partition in the active state.
  • the version number of the initialization program of the system board 23 to be transferred is obtained by referring to the system board configuration information 42, and further by referring to the partition-specific respective version number information 41, the version number of the initialization program of the transferred-to (exchanged-to) partition is obtained to compare them (S32).
  • the version number of the initialization program of the system board 23 to be transferred matches the version number of the initialization program of the transferred-to partition.
  • step S34 the initialization program having the same version number as the initialization program of the transferred-to partition is read from the OBP backup storage unit 34, and the initialization program is written to the non-volatile memory of the system board 23 to be transferred.
  • the initialization program of the version number of the transferred-to partition is written to the non-volatile memory 29b of the reserve bank.
  • step S35 the process in step S35, not in step S34, is performed.
  • the program is exchanged to the initialization program stored in the reserved bank as a result of exchange in bank.
  • Fig. 9 is a flowchart of the process of returning to the previous version when an abnormal operation occurs as a result of updating an initialization program.
  • step S43 the partition-specific respective version number information 41 is referred to in step S43, and the previous version number of the initialization program of the partition is obtained. If the previous version is stored in the reserved bank of the system board 23, the current bank is exchanged to the reserved bank to switch the version number of the initialization program. If the previous version is not stored in the reserved bank, the previous version is read from the OBP backup storage unit 34, and written to the reserved bank of the system board 23. Then, the bank is switched to the reserved bank.
  • the version number of the previous version of the partition is obtained from the partition-specific respective version number information 41, and the initialization program of the system board is rewritten to the initialization program of the previous version, thereby returning to the previous state.
  • the present invention can also be applied to other firmware, and is not limited to initialization programs.
  • the partition-specific respective version number information 41 and the system board configuration information 42 are stored as separate information, but they can be configured as a single set of information.
  • the firmware of the system board can be automatically updated to the version applicable to the partition in which the system board is used.

Abstract

Automated update to the firmware of the optimum version can be performed, for instance, when a system board 16 is exchanged. When a system board 16 is exchanged, a version change unit 15 compares the version of the firmware of the system board 16 with the version of the firmware of the corresponding partition stored in the partition-specific version storage unit 12. When they do not match, the version of the firmware of the system board 16 is updated to the same version stored in the partition-specific version storage unit 12.

Description

    Background
  • The present invention relates to a firmware version managing method of a computer system having a plurality of partitions in which a plurality of operation systems can be operated, and an information processing device having a plurality of partitions in which a plurality of operation systems can be operated.
  • With a computer system for basic operations, it is essential to exchange hardware and load new firmware in an active state.
  • There are two methods for changing the function of a computer system, that is, exchanging a system board and loading new firmware of a system board.
  • The first method of exchanging a system board is to design a new board, necessarily exchanging the entire hardware, and require a larger number of steps than the second method of loading new firmware in designing and loading processes. Normally, when a board is exchanged or new firmware is loaded after a computer system is implemented and then modified, loading new firmware requires a shorter processing time.
  • In a computer system having a plurality of partitions in which a plurality of operating systems can be simultaneously operated, different versions of firmware can be used in the respective partitions. If a different version of firmware is used in each partition, it is necessary that the same version be used between the firmware of the replacing system board and the firmware of the partition to be used. Conventionally, in this case, the version of the firmware of each partition is checked by a person who exchanges a system board to ensure use of the same version.
  • Furthermore, when a partition is newly generated and a system board is expanded, it is desired that the firmware to be implemented in the system board is the latest version. However, it is not necessarily the latest version of firmware implemented in the current system board.
  • Reference is made to Patent Document 1, Japanese Published patent Application No. 2002-358209 , and Patent Document 2, Japanese Published Patent Application No. 2004-21463 .
  • Patent Document 1 describes the method of efficiently performing a rewriting operation to update the version of firmware by determining whether or not the existing version and the latest version of the firmware for control of the output of information equipment match each other, updating the version to the latest version when they do not match, and selecting the latest version or the existing version and performing output processing depending on a result of the update.
  • Patent Document 2 describes the method of loading the optimum replacing firmware in the system configuration of the current peripheral device and the host computer from an automatically specified place when the driver is activated so that the firmware can be optimally updated.
  • Summary of the Invention
  • The present invention aims at automatically updating the firmware to the optimum version when the system board is exchanged, etc.
  • The present invention envisages a firmware version managing method of a system board of a computer system having a plurality of partitions in which a plurality of operating systems can be operated and each partition is configured by one or more system boards, associates the version of the firmware being used in each partition with each partition and stores the association result in a partition-specific version storage unit, determines when the system board is exchanged whether or not the version of the firmware of the newly used system board matches the version of the firmware of the corresponding partition stored in the partition-specific version storage unit, and updates the firmware of the newly used system board to the same version as the firmware of the partition stored in the partition-specific version storage unit.
  • According to embodiments of the present invention, when a system board is exchanged, the firmware of the system board can be automatically updated to the version of the firmware of the partition in which the system board is used.
  • In firmware version managing methods using the present invention, when the information about the partition assigned to each system board is stored in the system board configuration information storage unit, and the system board is exchanged, the information in the system board configuration information storage unit is referred and the partition of the system board to be exchanged is designated, the version of the firmware of the designated partition is obtained from the partition-specific version storage unit, and the firmware of the newly used system board is changed to the same version as the obtained firmware.
  • With the above-mentioned configuration, when a system board is exchanged, the partition assigned to the system board to be exchanged is designated according to the information stored in the system board configuration information storage unit in order automatically to update to the firmware of the version which is the same as the version of the firmware being used in the designated partition.
  • In firmware version managing methods using the present invention, when the board identification information for identification of the system board is stored in the system board configuration information storage unit, the firmware of the latest version is stored in the latest version storage unit, and the new partition is set and the new system board is used, the board identification information about the newly used system board is compared with the board identification information stored in the system board configuration information storage unit and it is determined whether or not the system board has not been registered. If the newly used system board has not been registered, then the firmware of the newly used system board is changed to the firmware of the latest version stored in the latest version storage unit.
  • With the above-mentioned configuration, when a new partition is set and a new system board is implemented, the firmware of the system board can be automatically updated to the firmware of the latest version.
  • In firmware version managing methods using the invention, the system board includes a first non-volatile memory storing the firmware of the version being used in the currently assigned partition, and a second non-volatile memory storing the firmware of the version used in the exchanged-to partition, and exchanges between the first and second non-volatile memory when the assigned-to partition of the system board is exchanged.
  • With the above-mentioned configuration, by exchanging the non-volatile memory loaded into the system board, the firmware of the version adapted to the exchanged-to partition can be quickly adopted.
  • In firmware version managing methods of the present invention, if an abnormal operation occurs as a result of updating the version of the firmware of the system board of the specific partition, then the version of the firmware of the system board of the specific partition in which the abnormal operation occurs is returned to the old version of the firmware of the specific partition stored in the partition-specific version storage unit with each partition kept in the active state.
  • With the above-mentioned configuration, if an abnormal operation occurs as a result of changing the version of the firmware, then the version before the change can be recovered to the original state.
  • In firmware version managing methods using the above-mentioned invention, when the firmware of a plurality of versions is stored in the backup storage unit, and the system board is exchanged, the version of the firmware of the newly used system board is compared with the version of the firmware of the corresponding partition stored in the partition-specific version storage unit. If the versions do not match each other, the version of the firmware of the partition is obtained from the partition-specific version storage unit, the firmware of the version is read from the backup storage unit, and the firmware of the newly used system board is changed to the firmware of the version read from the backup storage unit.
  • With the above-mentioned configuration, if a system board is exchanged and the version of the firmware of the newly used system board is different from the version of the firmware of the partition assigned to the system board, then the update can be performed to the optimum version using the firmware stored in the backup storage unit.
  • Brief Description of the Drawings
  • For a better understanding of the invention embodiments of it will now be described, by way of example, with reference to the accompanying drawings, in which:
  • Fig. 1
    shows the basic configuration of a computer system;
    Fig. 2
    shows the configuration of the computer according to an embodiment of the present invention;
    Fig. 3A
    shows partition-specific respective version number information;
    Fig. 3B
    shows system board configuration information;
    Fig. 3C
    shows the configuration of OBP backup information;
    Fig. 4
    is a flowchart of an automated update process on the version number when a system board is exchanged;
    Fig. 5
    is an explanatory view showing the automated update process when a system board is exchanged;
    Fig. 6
    is a flowchart of the automated update process on the version number of the system board of a new partition;
    Fig. 7
    is a flowchart of the automated update process when the configuration of a partition is changed;
    Fig. 8
    is an explanatory view showing the exchange of a bank; and
    Fig. 9
    is a flowchart of the process of returning to an old version.
    Description of Embodiments
  • The embodiments of the present invention are described below by referring to the attached drawings. Fig. 1 shows the basic configuration of a computer system 11 relating to the present invention.
  • The computer system 11 has a plurality of partitions in which a plurality of operating systems can be simultaneously operated, and each partition is configured by one or more system boards 16a - 16n in which firmware is implemented.
  • The computer system 11 shown in Fig. 1 comprises: a partition-specific version storage unit 12 for storing each partition as associated with the versions of the firmware of the system boards 16a - 16n assigned to each partition; a system board configuration information storage unit 13 for storing a partition assigned to a system board associated with the board identification information for identification a system board; and a latest version storage unit 14 for storing firmware of the latest version.
  • It further comprises a version change unit 15 for updating the version of the firmware of the system boards 16a - 16n. When a system board is exchanged, the version change unit 15 compares the version of the firmware implemented in a newly used system board with the version of the firmware of the corresponding partition stored in the partition-specific version storage unit 12. If they do not match, the firmware of the newly used system board is changed to the same version as the firmware of the corresponding partition stored in the partition-specific version storage unit 12.
  • When a new partition is set, the version change unit 15 compares the board identification information about the newly used system board with the board identification information stored in the system board configuration information storage unit 13, and determines whether or not the system board has not been registered. If it has not been registered, the firmware of the newly used system board is updated to the latest version.
  • Fig. 2 shows the configuration of the central portion of a computer 21 (information processing device) according to an embodiment of the present invention. The computer 21 has a plurality of partitions in which a plurality of operating systems can be simultaneously operated.
  • The computer 21 comprises a service processor board 22, and one or more system boards 23a, 23b, 23c, ... configuring a plurality of partitions. The system boards 23a, 23b, 23c, ... are loaded with a CPU, memory, a controller, etc.
  • The service processor board 22 comprises a service processor (CPU) 24; rewritable non-volatile memory (FMEM) 25 comprising flash memory, etc. for storing a control program executed by the service processor 24; main storage memory 26; rewritable non-volatile memory 27 which comprises a disk device or flash memory, etc. and stores management information about the system boards 23a, 23b, 23c, ...; and a controller 28 for controlling the communication of data with the system boards 23a, 23b, 23c, ....
  • In the following explanation, a system board 23 refers to all the system boards 23a, 23b, 23c ... or a specific system board.
  • The system board 23 is loaded with two rewritable non-volatile memory (FRAM) 29a and 29b such as flash memory, etc. The two non-volatile memories (FRAM) 29a and 29b store an initialization program (open boot program (OBP)) of the same or different versions. The initialization program (OBP, firmware) performs a diagnosis on a system board, initialization, download of an OS from the disk device not shown in the attached drawings, etc.
  • Thus, by having two non-volatile memory 29a and 29b, for example, when a partition to which a system board is assigned is exchanged, the initialization program of the version being used in the currently assigned partition is stored in the non-volatile memory 29a, and the initialization program of the version used in the exchanged-to partition is stored in the other non-volatile memory 29b. By switching between the non-volatile memory 29a and 29b, a quick exchange can be made to the version of the initialization program being used in the exchanged-to partition.
  • The non-volatile memory 27 of the service processor board 22 is configured by a partition-specific respective version number information storage unit 31, a system configuration information storage unit 32, a latest HCP (hardware control program) storage unit 33, and an initialization program (OBP) backup storage unit 34.
  • The partition-specific respective version number information storage unit 31 stores the information about the version (version number) of the initialization program used in each partition as associated with the partition number.
  • Fig. 3A shows the configuration of a partition-specific respective version number information 41 stored in the partition-specific respective version number information storage unit 31.
  • As shown in Fig. 3A, the partition-specific respective version number information 41 is configured by a set of data including: a partition number; a current version number of the initialization program of the system board 23 assigned to each partition; a bank-specific version number of an initialization program stored in the two non-volatile memory 29a and 29b of the system board 23; a current bank number indicating a bank 0 or 1 of the currently used bank; and the previous version number in the initialization program stored in the two banks.
  • By referring to the partition-specific respective version number information 41, for example, the version of the current initialization program of the partition of the partition number of 0 is A, the two banks of the system board 23 assigned to the partition store the initialization program of the same version A, and the currently used bank is the bank 1, and no previous version number is stored. Additionally, the version of the current initialization program of the partition of the partition number of 1 is A, the bank 0 (for example, corresponding to the non-volatile memory 29a) stores the initialization program of the version A, the bank 1 (for example, corresponding to the non-volatile memory 29b) stores the initialization program of the version B, the currently used bank is the bank 1, and the version A is the previous version.
  • Fig. 3B shows the configuration of system board configuration information 42 stored in the system configuration information storage unit 32.
  • As shown in Fig. 3B, the system board configuration information 42 is configured by a set of data including: a system board number (SB number) designated in dependence on the position into which the system board 23 is inserted; a partition number assigned to each system board 23; and a board serial number (board identification information) uniquely assigned to each system board 23.
  • By referring to the board serial number of the system board configuration information 42, for example, it is determined whether or not the system board 23 inserted into the position of a specific system board number is a new system board 23.
  • The latest hardware control program (HCP) storage unit 33 stores the initialization program of the latest version, the latest firmware of the service processor board 22, etc.
  • The initialization program (OBP) backup storage unit 34 stores several generations of initialization programs for backup.
  • Fig. 3C shows the configuration of an OBP backup information 43 stored in the OBP backup storage unit 34.
  • As shown in Fig. 3C, the OBP backup information 43 is configured as a set of data including: version number information indicating the version of an initialization program; "valid" indicating whether or not the initialization program can be rewritten; and an initialization program (firm information). In Fig. 3C, 'x' indicates data can be rewritten, and 'o' indicates data cannot be rewritten.
  • By reading an initialization program of a specific version of the OBP backup information 43 and writing the read initialization program to the non-volatile memory 29a or 29b of the system board 23, the initialization program implemented in the system board 23 can be rewritten into a desired version. The initialization program of the version number not to be stored any more is set the validity as "invalid", thereby allowing the area to be overwritten when the storage capacity of the initialization program (OBP) backup storage unit 34 becomes short.
  • Next, the processing operation of the computer 21 with the above-mentioned configuration is explained below by referring to the flowchart shown in Figs. 4, 6, 7 and 9. The process described below is performed by the service processor 24 of the service processor board 22.
  • First, the process of automatically updating the initialization program implemented in the system board 23 to the optimum version when the system board 23 is exchanged is explained below by referring to the flowchart shown in Fig. 4.
  • When the insertion of the system board 23 is detected and a system board exchanging event is received (S11 in Fig. 4), control is passed to step S12, and the following process is performed.
  • The system board number (for example, corresponding to the insertion position of the system board 23) is recognized from the position of the inserted system board 23, the system board configuration information 42 is referred to, and the board serial number corresponding to the system board number is obtained. Since the board serial number points to the board serial number of the system board 23 before the exchange, the serial number is compared with the input serial number of the system board 23.
  • In the next step S13, it is determined whether or not the serial numbers match. If the serial numbers do not match (NO in S13), control is passed to step S14, the system board configuration information 42 is referred to, and the partition number corresponding to the system board number is obtained. Then, the version number (version) of the initialization program corresponding to the partition number obtained by referring to the partition-specific respective version number information 41 is obtained.
  • In the next step S15, it is determined whether or not the version number of the initialization program implemented in the inserted system board 23 matches the version number of the initialization program being used in the corresponding partition.
  • When the version numbers do not match (NO in S15), control is passed to step S16, the initialization program of the same version number as the initialization program being used in the corresponding partition is retrieved from the initialization program (OBP) backup storage unit 34, and the initialization program of the version number obtained in the retrieval is written to the non-volatile memory 29a or 29b of the newly inserted system board 23, thereby updating the initialization program.
  • By the above-mentioned process in steps S11 to S16, when the system board 23 is exchanged, the version number of the initialization program of the newly inserted system board 23 can be automatically updated so that the version number can match the version number of the initialization program of the partition assigned to the system board. Thus, the operation of matching the version numbers of the initialization program is not required when the system board 23 is exchanged. Additionally, the occurrence of a malfunction caused by the non-matching version numbers of the initialization program of the system board 23 in the same partition can be prevented.
  • The process of updating the initialization program of the system board 23 to the optimum version number is explained below, referring to Fig. 5.
  • When the exchange of a specific system board 23 is detected, the partition number of the system board 23 is obtained from the system board configuration information 42. If it is found that the partition number is, for example, a partition number #0, then the version number of the initialization program (OBP) of the partition number #0 is obtained by referring to the partition-specific respective version number information 41 of the partition-specific respective version number information storage unit 31. If the version number of the initialization program is obtained, then the initialization program of the corresponding version number is downloaded from the initialization program (OBP) backup storage unit 34 (OBP of the version 1 in Fig. 5). Then, the initialization program of the version 1 downloaded to the non-volatile memory 29a or 29b of the system board 23 to be exchanged is written.
  • Thus, the version number of the initialization program of the system board 23 to be exchanged can be automatically updated so that it matches the version number of the initialization program being used in the partition to which the system board 23 is assigned.
  • Fig. 6 is a flowchart of the automated update process of the initialization program when a new partition is generated, and the system board 23 used in the new partition is expanded.
  • When a system board 23 insertion event indicating that the system board 23 has been inserted is received (S21 shown in Fig. 6), the board serial number of the inverted system board 23 is compared with the board serial number of the system board number of the system board configuration information 42 (S22).
  • It is determined whether or not the inserted system board is a new system board depending on whether or not the board serial numbers match (S23).
  • If a new system board 23 is inserted (YES in S23), then control is passed to step S24, the version number of the initialization program (OBP) stored in the non-volatile memory (EMEM) 29a or 29b of the inserted system board 23 is read, and the version number of the initialization program is compared with the latest version of the initialization program stored in the latest HCP storage unit 33. Then, in the next step S25, it is determined whether or not the version numbers match.
  • If the version number of the initialization program of the newly inserted system board 23 does not match the latest version number (NO in S25), then control is passed to step S26, the initialization program of the latest version stored in the latest HCP storage unit 33 is read, and the initialization program of the latest version is written to the non-volatile memory 29a or 29b of the system board 23, thereby updating the initialization program.
  • If it is determined in step S23 that it is not the newly inserted system board 23 (NO in S23), or if it is determined in step S25 that the version number of the initialization program of the newly inserted system board 23 matches the version number of the latest version (YES in S25), the process terminates immediately.
  • If a partition is newly generated by the process in steps S21 through S26, and a new system board 23 is inserted, then the new system board 23 can be automatically updated to the initialization program of the latest version number. Thus, when a partition is updated, the initialization program implemented in the system board 23 being used in the partition can be set to the latest version number.
  • Fig. 7 is a flowchart of the automated update process on the version number of the initialization program when a standby system board or the system board 23 assigned to a specific partition is dynamically exchanged to another partition in the active state.
  • When a transfer event of exchanging a partition of the system board 23 is received (S31 in Fig. 7), the version number of the initialization program of the system board 23 to be transferred is obtained by referring to the system board configuration information 42, and further by referring to the partition-specific respective version number information 41, the version number of the initialization program of the transferred-to (exchanged-to) partition is obtained to compare them (S32). In the next step S33, it is determined whether or not the version number of the initialization program of the system board 23 to be transferred matches the version number of the initialization program of the transferred-to partition.
  • If the version numbers do not match (NO in S33), then control is passed to step S34, the initialization program having the same version number as the initialization program of the transferred-to partition is read from the OBP backup storage unit 34, and the initialization program is written to the non-volatile memory of the system board 23 to be transferred.
  • According to the present embodiment, since the system board 23 is loaded with the two non-volatile memories 29a and 29b as the current bank and the reserve bank, the initialization program of the version number of the transferred-to partition is written to the non-volatile memory 29b of the reserve bank.
  • If the initialization program of the same version number as the transferred-to partition has already been stored in the non-volatile memory 29b of the reserved bank, then the process in step S35, not in step S34, is performed. In the process in step S35, the program is exchanged to the initialization program stored in the reserved bank as a result of exchange in bank. Thus, when the partition assigned to the system board 23 is exchanged, the necessity to download the initialization program of the same version number as the exchanged-to partition, and write it to the non-volatile memory 29a (or 29b) on the system board 23 is eliminated, thereby shortening the time required to exchange the partition.
  • Fig. 9 is a flowchart of the process of returning to the previous version when an abnormal operation occurs as a result of updating an initialization program.
  • If a system become inoperable or a user detects an abnormal operation as a result of updating the initialization program (OBP) of a specific partition (S41 in Fig. 9), the user performs an operation of returning the initialization program to the previous version (S42).
  • When the operation of returning the initialization program to the previous version is detected, the partition-specific respective version number information 41 is referred to in step S43, and the previous version number of the initialization program of the partition is obtained. If the previous version is stored in the reserved bank of the system board 23, the current bank is exchanged to the reserved bank to switch the version number of the initialization program. If the previous version is not stored in the reserved bank, the previous version is read from the OBP backup storage unit 34, and written to the reserved bank of the system board 23. Then, the bank is switched to the reserved bank.
  • If an abnormal condition occurs as a result of updating the initialization program of the system board of a specific partition in the processes in steps S41 through S43, the version number of the previous version of the partition is obtained from the partition-specific respective version number information 41, and the initialization program of the system board is rewritten to the initialization program of the previous version, thereby returning to the previous state.
  • The present invention can also be applied to other firmware, and is not limited to initialization programs.
  • In the present embodiment, the partition-specific respective version number information 41 and the system board configuration information 42 are stored as separate information, but they can be configured as a single set of information.
  • Using the present invention, when a system board is exchanged, the firmware of the system board can be automatically updated to the version applicable to the partition in which the system board is used.

Claims (11)

  1. A firmware version managing method of a system board of a computer system having a plurality of partitions in which a plurality of operating systems can be operated, and each partition is configured by one or more system boards (16; 23), wherein:
    a version of the firmware used in each partition is associated with each partition and stored in a partition-specific version storage unit (12); and
    when the system board (16) is exchanged, it is determined whether or not a version of the firmware of a newly used system board (16) matches a version of the firmware of a corresponding partition stored in the partition-specific version storage unit (12), and when the versions do not match, the firmware of the newly used system board (16) is changed to the same version as the firmware of the partition stored in the partition-specific version storage unit (12).
  2. A method according to claim 1, wherein:
    information about the partition assigned to each system board is stored in a system board configuration information storage unit (13); and
    when the system board (16) is exchanged, the information in the system board configuration information storage unit (13) is referred to in designating a partition of the system board (16) to be exchanged, the version of the firmware of the designated partition is obtained from the partition-specific version storage unit (12), and the version of the firmware of the newly used system board (16) is changed to the same version as the obtained firmware.
  3. A method according to claim 1 or 2, wherein:
    board identification information for identification of the system board is stored in a system board configuration information storage unit (13);
    firmware of a latest version is stored in a latest version storage unit (14); and
    when a new partition is set and a new system board (16) is used, board identification information about the newly used system board (16) is compared with board identification information stored in the system board configuration information storage unit (13) and it is determined whether or not the system board (16) has not been registered, and when the newly used system board (16) has not been registered, the firmware of the newly used system board (16) is changed to the firmware of the latest version stored in the latest version storage unit (14).
  4. A method according to any preceding claim, wherein:
    the system board (16) comprises first non-volatile memory (29a) storing the firmware of the version used in a currently assigned partition, and a second non-volatile memory (29b) storing the firmware of the version being used in an exchanged-to partition; and
    when an assigned-to partition of the system board (16) is exchanged, the first and second non-volatile memory (29a) (29b) are switched to each other.
  5. A method according to any preceding claim, wherein:
    when an abnormal operation occurs as a result of updating the version of the firmware of the system board (16) of the specific partition, the version of the firmware of the system board (16) of the specific partition in which the abnormal operation has occurred is returned to a previous version of the firmware of the specific partition stored in the partition-specific version storage unit (12) with each partition kept in an active state.
  6. A method according to any preceding claim, wherein:
    firmware of a plurality of versions is stored in a backup storage unit; and
    when the system board (16) is exchanged, the version of the firmware of the newly used system board (16) is compared with the version of the firmware of the corresponding partition stored in the partition-specific version storage unit (12), when the versions do not match, the firmware of the version of the corresponding partition stored in the partition-specific version storage unit (12) is read from the backup storage unit, and the firmware of the newly used system board (16) is changed to the firmware of the version read from the backup storage unit.
  7. An information-processing device having a plurality of partitions in which a plurality of operating systems can be operated, each partition being configured by one or more system boards (16; 23) in which firmware is implemented, comprising:
    a partition-specific version storage unit (12) storing a version of the firmware used in each partition associated with each partition; and
    a version change unit (15) determining, when the system board (16) is exchanged, whether or not a version of the firmware of a newly used system board (16) matches a version of the firmware of a corresponding partition stored in the partition-specific version storage unit (12), and changing, when the versions do not match, the firmware of the newly used system board (16) to a same version as the firmware of the partition stored in the partition-specific version storage unit (12).
  8. An information-processing device according to claim 7, further comprising:
    a system board configuration information storage unit (13) storing information about the partition assigned to each system board (16), wherein
    when the system board (16) is exchanged, the version change unit (14) refers to the information in the system board configuration information storage unit (13) in designating a partition of the system board (16) to be exchanged, obtains the version of the firmware of the designated partition from the partition-specific version storage unit (12), and changes the version of the firmware of the newly used system board (16) to the same version as the obtained firmware.
  9. An information-processing device according to claim 7 or 8, further comprising:
    a system board configuration information storage unit (13) storing board identification information for identification of the system board (16); and
    a latest version storage unit (14) storing firmware of a latest version, wherein
    when a new partition is set and a new system board (16) is used, the version change unit (15) compares board identification information about the newly used system board (16) with the board identification information stored in the system board configuration information storage unit (13), determines whether or not the system board (16) has not been registered, and when the newly used system board (16) has not been registered, changes the firmware of the newly used system board (16) to the firmware of the latest version stored in the latest version storage unit (14).
  10. An information-processing device according to claim 7, 8 or 9, wherein:
    the system board (16) comprises a first non-volatile memory (29a) storing the firmware of the version used in a currently assigned partition, and a second non-volatile memory (29b) storing the firmware of the version being used in an exchanged-to partition; and
    when a partition assigned to the system board (16) is exchanged, the first and second non-volatile memory (29a, 29b) are switched to each other.
  11. An information processing device according to any of claims 7 to 10, wherein:
    when an abnormal operation occurs as a result of updating the version of the firmware of the system board (16) of the specific partition, the version change unit (15) returns the version of the firmware of the system board (16) of the specific partition in which the abnormal operation has occurred to a previous version of the firmware of the specific partition stored in the partition-specific version storage unit (12) with each partition kept in an active state.
EP05253488.0A 2005-03-18 2005-06-07 Firmware version managing method and computer system Expired - Fee Related EP1720097B1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005078506A JP4791061B2 (en) 2005-03-18 2005-03-18 Firmware version management method and information processing apparatus for computer system

Publications (2)

Publication Number Publication Date
EP1720097A1 true EP1720097A1 (en) 2006-11-08
EP1720097B1 EP1720097B1 (en) 2016-02-03

Family

ID=35064951

Family Applications (1)

Application Number Title Priority Date Filing Date
EP05253488.0A Expired - Fee Related EP1720097B1 (en) 2005-03-18 2005-06-07 Firmware version managing method and computer system

Country Status (3)

Country Link
US (1) US7681191B2 (en)
EP (1) EP1720097B1 (en)
JP (1) JP4791061B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101145960B (en) * 2007-10-15 2010-04-21 中兴通讯股份有限公司 A method for realizing software version compatibility after single board hardware change
WO2012089429A1 (en) * 2010-12-28 2012-07-05 Endress+Hauser Flowtec Ag Field device having long-term firmware compatibility

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4940967B2 (en) * 2007-01-30 2012-05-30 富士通株式会社 Storage system, storage device, firmware hot replacement method, firmware hot swap program
EP2161663B1 (en) * 2007-06-01 2014-04-16 Fujitsu Limited Information processing apparatus and method for reconfiguring information processing apparatus
US8819655B1 (en) * 2007-09-17 2014-08-26 Symantec Corporation Systems and methods for computer program update protection
JP5161600B2 (en) * 2008-02-04 2013-03-13 株式会社東芝 Information processing apparatus and data recovery method
JP4530059B2 (en) * 2008-02-18 2010-08-25 日本電気株式会社 Disk array device, firmware exchange method, and firmware exchange program
US8225135B2 (en) * 2009-07-07 2012-07-17 Drobo, Inc. System and method for protecting users of data storage systems against known problems
JP5447532B2 (en) * 2009-11-24 2014-03-19 富士通株式会社 Information processing device
JP5564956B2 (en) * 2010-01-15 2014-08-06 富士通株式会社 Information processing apparatus and firmware update method for information processing apparatus
JP5621926B2 (en) * 2011-06-23 2014-11-12 富士通株式会社 Processing device and management board
WO2012176311A1 (en) * 2011-06-23 2012-12-27 富士通株式会社 Processing device and management board
CN103138969B (en) * 2011-11-28 2016-03-16 英业达科技有限公司 Server rack system
TWI528285B (en) * 2011-12-20 2016-04-01 緯創資通股份有限公司 Manufacturing system and firmware burning method
JP6449103B2 (en) * 2015-06-01 2019-01-09 株式会社日立製作所 Processor built-in device software management device, management system, and management method
CN105700918A (en) * 2016-01-05 2016-06-22 青岛海信移动通信技术股份有限公司 System upgrading method and device
JP2017156937A (en) * 2016-03-01 2017-09-07 ヤンマー株式会社 Terminal device and software rewrite program
US11663084B2 (en) * 2017-08-08 2023-05-30 Rubrik, Inc. Auto-upgrade of remote data management connectors
CN109981522A (en) * 2017-12-27 2019-07-05 深圳市优必选科技有限公司 The compatibility method and device of communication protocol
JP7048152B2 (en) 2018-03-30 2022-04-05 Necプラットフォームズ株式会社 Devices, computer systems, firmware determination methods and programs by devices
JP7238643B2 (en) * 2019-06-28 2023-03-14 株式会社リコー ELECTRONIC DEVICE, INFORMATION PROCESSING SYSTEM AND INFORMATION PROCESSING METHOD

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5901320A (en) * 1996-11-29 1999-05-04 Fujitsu Limited Communication system configured to enhance system reliability using special program version management
US20020124166A1 (en) * 2001-03-01 2002-09-05 International Business Machines Corporation Mechanism to safely perform system firmware update in logically partitioned (LPAR) machines
US20020165962A1 (en) * 2001-02-28 2002-11-07 Alvarez Mario F. Embedded controller architecture for a modular optical network, and methods and apparatus therefor
US20030033512A1 (en) * 2001-08-09 2003-02-13 International Business Machines Corporation Method, system, and product for booting a partition using one of multiple, different firmware images
US20030106052A1 (en) * 2001-12-03 2003-06-05 Morrison John A. System and method for high availability firmware load
US20030233493A1 (en) * 2002-06-15 2003-12-18 Boldon John L. Firmware installation methods and apparatus
US20040139308A1 (en) * 2003-01-09 2004-07-15 International Business Machines Corp. System and apparatus for eliminating user interaction during hardware configuration at system boot
US20040255286A1 (en) * 2003-06-13 2004-12-16 Rothman Michael A. Method for distributed update of firmware across a clustered platform infrastructure

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020016891A1 (en) * 1998-06-10 2002-02-07 Karen L. Noel Method and apparatus for reconfiguring memory in a multiprcessor system with shared memory
US6725317B1 (en) * 2000-04-29 2004-04-20 Hewlett-Packard Development Company, L.P. System and method for managing a computer system having a plurality of partitions
JP2002358209A (en) 2001-06-01 2002-12-13 Canon Inc Information processing method and device thereof
JP3738706B2 (en) * 2001-06-27 2006-01-25 日本電気株式会社 In-device version unification method
JP2003025698A (en) * 2001-07-13 2003-01-29 Fujitsu Ltd Electronic unit, and method for judging compatibility of version between the electronic unit and other unit
CA2369228A1 (en) * 2002-01-24 2003-07-24 Alcatel Canada Inc. System and method for managing configurable elements of devices in a network element and a network
JP3891004B2 (en) * 2002-02-26 2007-03-07 日本電気株式会社 Information processing system, control method of the system, and program
JP2004021463A (en) 2002-06-14 2004-01-22 Canon Inc Peripheral device firmware updating device
US7512749B2 (en) * 2003-06-30 2009-03-31 Intel Corporation Safe software revision for embedded systems

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5901320A (en) * 1996-11-29 1999-05-04 Fujitsu Limited Communication system configured to enhance system reliability using special program version management
US20020165962A1 (en) * 2001-02-28 2002-11-07 Alvarez Mario F. Embedded controller architecture for a modular optical network, and methods and apparatus therefor
US20020124166A1 (en) * 2001-03-01 2002-09-05 International Business Machines Corporation Mechanism to safely perform system firmware update in logically partitioned (LPAR) machines
US20030033512A1 (en) * 2001-08-09 2003-02-13 International Business Machines Corporation Method, system, and product for booting a partition using one of multiple, different firmware images
US20030106052A1 (en) * 2001-12-03 2003-06-05 Morrison John A. System and method for high availability firmware load
US20030233493A1 (en) * 2002-06-15 2003-12-18 Boldon John L. Firmware installation methods and apparatus
US20040139308A1 (en) * 2003-01-09 2004-07-15 International Business Machines Corp. System and apparatus for eliminating user interaction during hardware configuration at system boot
US20040255286A1 (en) * 2003-06-13 2004-12-16 Rothman Michael A. Method for distributed update of firmware across a clustered platform infrastructure

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101145960B (en) * 2007-10-15 2010-04-21 中兴通讯股份有限公司 A method for realizing software version compatibility after single board hardware change
WO2012089429A1 (en) * 2010-12-28 2012-07-05 Endress+Hauser Flowtec Ag Field device having long-term firmware compatibility

Also Published As

Publication number Publication date
US20060225069A1 (en) 2006-10-05
JP4791061B2 (en) 2011-10-12
JP2006260330A (en) 2006-09-28
EP1720097B1 (en) 2016-02-03
US7681191B2 (en) 2010-03-16

Similar Documents

Publication Publication Date Title
EP1720097B1 (en) Firmware version managing method and computer system
US6836859B2 (en) Method and system for version control in a fault tolerant system
CN103299276B (en) The software upgrading process of embedded equipment
EP1591893A1 (en) Method and system for fail-safe updating of boot code
US8312314B2 (en) Storage system and control method of storage system
CN102165422B (en) Firmware update device and method
KR100750132B1 (en) Method and system for booting, updating software automatically and recovering update error, and computer readable medium recording the method
US9317275B2 (en) Computer system and program restoring method thereof
US6629259B2 (en) Method for automatically duplicating a BIOS
JP4810172B2 (en) Control device, version upgrade method, and program
KR102107843B1 (en) Firmware updating method and electronic device using the same
US6282700B1 (en) Mechanism for maintaining revisions of objects in flash memory
KR20010072128A (en) Method and apparatus for updating a nonvolatile memory
US8533450B2 (en) File update system and boot management system of mobile communication terminal, method of updating file in mobile communication terminal, and method of booting mobile communication terminal
US20090313501A1 (en) Method and arrangement for processing transactions in a flash type memory device
WO2006107086A1 (en) Storage device, memory managing apparatus, memory managing method, and program
CN113934471A (en) Baseboard management controller of computer system and starting method
US20060130039A1 (en) Update control program, update control method, and update control device
CN111124294B (en) Sector mapping information management method and device, storage medium and equipment
EP1461711B1 (en) Method and apparatus for modifying the contents of a revision identification register
WO2020043361A1 (en) Installing application program code on a vehicle control system
CN117687663B (en) OTA-based partition dynamic adjustment method, device, equipment and storage medium
CN110943871B (en) Resource interval adjusting method and device
US20230185564A1 (en) Control device and management method
JPH0973437A (en) Multi-cpu system

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU MC NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR LV MK YU

17P Request for examination filed

Effective date: 20061108

17Q First examination report despatched

Effective date: 20070102

AKX Designation fees paid

Designated state(s): DE FR GB

REG Reference to a national code

Ref country code: DE

Ref legal event code: R079

Ref document number: 602005048400

Country of ref document: DE

Free format text: PREVIOUS MAIN CLASS: G06F0009440000

Ipc: G06F0009445000

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

RIC1 Information provided on ipc code assigned before grant

Ipc: G06F 9/445 20060101AFI20150714BHEP

INTG Intention to grant announced

Effective date: 20150803

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): DE FR GB

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: DE

Ref legal event code: R096

Ref document number: 602005048400

Country of ref document: DE

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 12

REG Reference to a national code

Ref country code: DE

Ref legal event code: R097

Ref document number: 602005048400

Country of ref document: DE

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20161104

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 13

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 14

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20200512

Year of fee payment: 16

Ref country code: DE

Payment date: 20200527

Year of fee payment: 16

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20200527

Year of fee payment: 16

REG Reference to a national code

Ref country code: DE

Ref legal event code: R119

Ref document number: 602005048400

Country of ref document: DE

GBPC Gb: european patent ceased through non-payment of renewal fee

Effective date: 20210607

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210607

Ref country code: DE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20220101

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: FR

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20210630