Summary of the invention
In view of this, provide a kind of mainboard, can provide backup for substrate management control system, thereby while realizing the damage of substrate management control system, can realize the object of fast restore substrate management control system.
In addition, also need to provide a kind of method of mainboard backup substrate management control system, can provide backup for substrate management control system, thereby while realizing the damage of substrate management control system, can realize the object of fast restore substrate management control system.
A kind of mainboard that embodiment of the present invention provides, comprise the first flash memory and the second flash memory, the second flash memory is for memory substrate management control system, substrate management control system comprises multiple blocks, the second flash memory also stores backup configuration table, backup configuration table comprises multiple blocks of substrate management control system and affiliated group, and whether each group includes and back up, backup order, backup cycle and the information of Last Backup time, and mainboard also comprises selects module, computing module and backup module.Select module, filter out the group that needs backup for the information according to whether backing up from backup configuration table, also further select the highest group of backup order for the information according to backup order.Computing module, whether arrive this BACKUP TIME for the block that belongs to the group that backup order is the highest according to the information check of Last Backup time and backup cycle, and calculate the required storage space of block that belongs to the group that backup order is the highest in the time that the block that belongs to the group that backup order is the highest arrives this BACKUP TIME.Backup module, for checking that according to the storage space calculating whether the remaining storage space of the first flash memory is enough, and when in the first flash memory, remaining storage space is enough, the block that belongs to the group that backup order is the highest is backuped to the first flash memory from the second flash memory.
Preferably, select module also whether to also have group to need backup for checking, and in the time also having group to back up, select the group of next backup order to back up.
Preferably, mainboard also comprises storer, Port Multiplier and mainboard chip, Port Multiplier comprises two input ends, be connected with the second flash memory with the first flash memory respectively, the output terminal of Port Multiplier is connected with mainboard chip, mainboard chip is connected with storer, wherein mainboard chip is for controlling the passage conducting that Port Multiplier is connected with the second flash memory, the block that needs backup in the second flash memory is sent to storer and does temporary transient storage, and control the passage conducting that Port Multiplier is connected with the first flash memory, the block that is temporarily stored in storer is sent to the first flash memory and does permanent storage.
Preferably, mainboard chip is for carrying out the function of selecting module, computing module and backup module.
Preferably, one of multiple blocks of substrate management control system are Boot loader block, and the backup order of the group under Boot loader block is first.
Preferably, substrate management control system also comprises secure store program area block, kernel program block and file system block, wherein the backup of the group under secure store program area block order is second, and the backup order of the group under kernel program block and file system block is the 3rd.
Preferably, backup configuration table also comprises substrate management control system address information and backup address information, wherein, substrate control system address information is that the block of substrate management control system is stored in the position in the second flash memory, and backup address information is the block of substrate management control system memory location in the first flash memory while backuping to the first flash memory.
Preferably, backup configuration table also comprises cyclic redundancy check (CRC) code, the first flash memory also stores Basic Input or Output System (BIOS), Basic Input or Output System (BIOS) is used for sending IPMI order to substrate management control system, be confirmed whether to detect the response of substrate management control system to IPMI order, in the time that as received basis board management control system is not responded the order of IPMI, compare one by one the cyclic redundancy check (CRC) code of backup configuration table and the cyclic redundancy check (CRC) code that the second flash memory calculates, and when inconsistent for the cyclic redundancy check (CRC) code that calculates at cyclic redundancy check (CRC) code and second flash memory of backup configuration table, think that the block in the second flash memory is bad block, and the block backing up in the first flash memory is returned to replace damaged block in the second flash memory.
The method of a kind of mainboard backup substrate management control system that embodiment of the present invention provides, mainboard comprises the first flash memory, the second flash memory, the second flash memory is for memory substrate management control system, substrate management control system comprises multiple blocks, it is characterized in that, the second flash memory also stores backup configuration table, and backup configuration table comprises multiple blocks of substrate management control system and affiliated group, and whether each group includes and back up, backup order, backup cycle and the information of Last Backup time.From backup configuration table, screen the group that needs backup according to the information whether backing up, further select the highest group of backup order according to the information of backup order.Whether the block that belongs to the group that backup order is the highest according to the information check of Last Backup time and backup cycle arrives this BACKUP TIME.In the time that definite block that belongs to the group that backup order is the highest arrives this BACKUP TIME, calculate the required storage space of block that belongs to the group that backup order is the highest, check that according to the storage space calculating in the first flash memory, whether remaining storage space is enough.In the time determining that in the first flash memory, remaining storage space is enough, the block that belongs to the group that backup order is the highest is backuped to the first flash memory from the second flash memory.
Preferably, the method for mainboard backup substrate management control system also comprises whether inspection also has group to need backup, and in the time also having group to back up, selects the group of next backup order to back up.
Preferably, mainboard also comprises storer, Port Multiplier and mainboard chip, Port Multiplier has two input ends, be connected with the second flash memory with the first flash memory respectively, the output terminal of Port Multiplier is connected with mainboard chip, mainboard chip is connected with storer, and the step that the block that needs backup in the second flash memory is backuped to the first flash memory comprises: the passage conducting that mainboard chip control Port Multiplier is connected with the second flash memory; The block that needs backup in the second flash memory is sent to storer and does temporary transient storage; The passage conducting that mainboard chip control Port Multiplier is connected with the first flash memory; The block that is temporarily stored in storer is sent to the first flash memory and does permanent storage.
Preferably, one of multiple blocks of substrate management control system are Boot loader block, and the backup order of Boot loader block is first.
Preferably, substrate management control system also comprises secure store program area block, kernel program block and file system block, wherein the backup of the group under secure store program area block order is second, and the backup order of the group under kernel program block and file system block is the 3rd.
Preferably, backup configuration table also comprises substrate management control system address information and backup address information, wherein, substrate control system address information is that the block of substrate management control system is stored in the position in the second flash memory, and backup address information is the block of substrate management control system memory location in the first flash memory while backuping to the first flash memory.
Preferably, backup configuration table also comprises cyclic redundancy check (CRC) code, and the first flash memory also stores Basic Input or Output System (BIOS), and described method also comprises: Basic Input or Output System (BIOS) sends IPMI order to substrate management control system; Be confirmed whether to detect the response of substrate management control system to IPMI order; When Basic Input or Output System (BIOS) is when as received basis board management control system is responded the order of IPMI, compare one by one the cyclic redundancy check (CRC) code of backup configuration table and the cyclic redundancy check (CRC) code that the second flash memory calculates; When the cyclic redundancy check (CRC) code that calculates when cyclic redundancy check (CRC) code and second flash memory of backup configuration table is inconsistent, thinks that the block in the second flash memory is bad block, and the block backing up in the first flash memory is returned to replace damaged block in the second flash memory.
With respect to prior art, the method of the mainboard in embodiment of the present invention and backup substrate management control system thereof is by being sent to substrate management control system data the first flash memory and storing from the second flash memory, make full use of the remaining space of the first flash memory, thereby for substrate management control system provides information back-up, to realize the object of fast restore substrate management control system.
Embodiment
Referring to Fig. 1, is the functional block diagram of mainboard 10 1 embodiments of the present invention, and in the present embodiment, mainboard 10 comprises the first flash memory 146, the second flash memory 148, selects module 104, computing module 106 and backup module 108.Mainboard 10 also comprises Basic Input or Output System (BIOS) (Basic Input Output System, BIOS) with substrate management control system (Baseboard Management Controller, BMC) 110, the health status of BIOS charge of overseeing mainboard 10, every hardware to mainboard 10 when BMC110 is responsible for starting shooting carries out initialization setting and test, to guarantee that system can normally work.In the present embodiment, BIOS can be stored in the first flash memory 146, and BMC110 can be stored in the second flash memory 148.
In the present invention's one specific embodiment, mainboard 10 can be by the remaining space in BMC110 back-up storage to the first flash memory 146 in the second flash memory 148, when in the second flash memory 148, BMC110 damages, mainboard 10 can be by BMC110 in BMC110 fast restore second flash memory 148 of backup in the first flash memory 146.
By way of example, the first flash memory 146 can be flash memory, the internal memory of physical database etc. of Basic Input or Output System (BIOS) existing internal memory on mainboard 10, and mainboard 10 utilizes the first existing internal memory 146 to provide sufficient backup space to the second flash memory 148.For convenience of description, below, only in Basic Input or Output System (BIOS), saving as example taking the first flash memory 146 is elaborated.
In the second flash memory 148, also store backup configuration table 120, backup configuration table 120 comprises system backup parameter and system recovery parameter.Mainboard 10 backups to the first flash memory 146 according to the system backup parameter in backup configuration table 120 by BMC110, and the data of the first flash memory 146 interior backups is returned in the second flash memory 148 in the time that BMC110 damages according to system recovery parameter.
In the present embodiment, system backup parameter is set according to backup requirements voluntarily by user, and system is recovered parameter mainboard 10 after backup completes and produced voluntarily.Referring to Fig. 2, is the schematic diagram of backup configuration table 120 embodiment of mainboard in Fig. 1 10, and wherein, upper table is the information of backup configuration table 120 unitary construction, and following table is the specifying information of backup group.
Refer in Fig. 2 table, backup configuration table 120 is longitudinally each block of the data that will back up, is laterally the system backup parameter and system recovery parameter that each block is corresponding.Wherein, the block in backup configuration table 120 comprises Boot loader, secure store program, kernel program, file system and other blocks.
Refer to following table in Fig. 2, whether system backup parameter specifically comprises group under each block of BMC110, backs up, backup order, backup cycle and the information of Last Backup time.Such as, in order to prevent because Boot loader damages, make mainboard 10 cannot carry out reduction BMC110 action, cause the BMC110 cannot normal boot-strap, therefore Boot loader needs backup, and Boot loader needs preferential backup, and in the second flash memory 148, one of multiple blocks of storage are Boot loader block, the backup order in the group's field under guiding device program area block is first.Whether other block backs up, backup order and backup cycle think that according to user the height of this block importance sets, backup order in group's field under secure store program is second, and the backup order in the group's field under kernel program and file system is the 3rd.
System is recovered parameter and is comprised substrate management control system address information, backup address information, after system recovery parameter is completed by backup, mainboard 10 produces voluntarily, particularly, substrate management control system address information is that the block storing in the second flash memory 148 is stored in the position in the second flash memory 148; Backup address information is that the block storing in the second flash memory 148 backups to the position in the first flash memory 146 that is stored in the first flash memory 146, please refer to Fig. 2, for instance, the position of kernel program block stores in the second flash memory 148 is (0x5000 ~ 7000), the position that kernel program block backups in the first flash memory 146 is (0x6000 ~ 8000), and cyclic redundancy check (CRC) code is (0xE3CA).In the time that system backup parameter or system are recovered parameter and are had variation, the parameter of variation can temporarily be stored in storer 140, in the time that BMC110 starts shooting, BMC110 can be loaded in backup configuration table 120 parameter of variation to substitute original parameter, reaches the renewal to backup configuration table 120.
Should be noted that, upper table in Fig. 2 and following table are only a kind of examples of the backup configuration table 120 of mainboard 10 of the present invention, in actual application, can adjust according to the actual requirements the order of the field in table and following table, also additions and deletions relevant field according to the actual requirements.
Select module 104 from backup configuration table 120, to filter out the group that needs backup according to the information whether backing up, then from backup configuration table 120, select the highest group of backup order according to the information of backup order.Whether the block that computing module 106 belongs to according to the information check of Last Backup time and backup cycle the group that backup order is the highest arrives this BACKUP TIME, and calculates the required storage space of block that belongs to the group that backup order is the highest in the time that the block that belongs to the group that backup order is the highest arrives this BACKUP TIME.Backup module 108 checks that according to the storage space calculating in the first flash memory 146, whether remaining storage space is enough, and when in the first flash memory 146, remaining storage space is enough, the block that belongs to the group that backup order is the highest in the second flash memory 148 is backuped in the first flash memory 146.Select module 104 to check and whether also have group to need backup, and in the time also having group to back up, select the group of next backup needs backup sequentially to back up.
Please refer to Fig. 2, as what presented in the example of Fig. 2, preferentially backup is group 1, what belong to group 1 is Boot loader block, Boot loader block need to back up and back up once for every 18 days, and it's 18 days whether has past the inspection Last Backup time, with 21 days Dec in 2012 in example, first utilize the date of today and the mistiming that Last Backup Time Calculation draws, then the backup cycle of this mistiming and 18 days is contrasted to judge whether to arrive this BACKUP TIME.If arrive this BACKUP TIME, computing module 106 calculates all required storage spaces of block that belong to group 1 in the second flash memory 148, reexamine remaining storage space in the first flash memory 146 and whether enough backed up all blocks that belong to group 1, if remaining storage space enough backups to the Boot loader block in the second flash memory 148 in the first flash memory 146, start again secure store program area block to backup, that is to say that working as Boot loader block has backed up just and can back up secure store program area block, insufficient space or all blocks have backed up and have stopped backup actions.
Fig. 3 is the hardware structure figure of mainboard 10 1 embodiments of the present invention.In an embodiment, mainboard 10 comprises storer 140, Port Multiplier 144, mainboard chip 142, the first flash memory 146 and the second flash memory 148, and mainboard chip 142 backups to the block that needs backup in the second flash memory 148 in the first flash memory 146 by Port Multiplier 144.In the present embodiment, mainboard chip 142 can be the South Bridge chip on mainboard 10.In the present embodiment, Port Multiplier 144 has two input ends, is connected respectively with the first flash memory 146 with the second flash memory 148, and the output terminal of this Port Multiplier 144 is connected with mainboard chip 142; Mainboard chip 142 is connected with storer 140; Mainboard chip 142 is controlled the passage conducting that Port Multiplier 144 is connected with the second flash memory 148, the block that needs backup is sent to storer 140 does temporary transient storage in the second flash memory 148; Mainboard chip 142 is controlled the passage conducting that Port Multiplier 144 is connected with the first flash memory 146, is sent to the first flash memory 146 and does permanent storage, and delete the block that is temporarily stored in storer 140 by being temporarily stored in block in storer 140.
In the present invention's one specific embodiment, the first flash memory 146 also stores Basic Input or Output System (BIOS), and in the time that mainboard 10 backs up BMC110 start, whether the BMC110 that Basic Input or Output System (BIOS) is detected in the second flash memory 148 damages.In the present embodiment, Basic Input or Output System (BIOS) sends IPMI order (Intelligent Platform Management Interface Command, IPMI Command) to BMC110, be confirmed whether to detect the response of BMC110 to IPMI Command.If Basic Input or Output System (BIOS) is not received the IPMI Command that BMC110 responds, Basic Input or Output System (BIOS) is compared the cyclic redundancy check (CRC) code of this backup configuration table 120 and the cyclic redundancy check (CRC) code that the second flash memory 148 calculates one by one.When the cyclic redundancy check (CRC) code that calculates when cyclic redundancy check (CRC) code and second flash memory 148 of backup configuration table 120 is inconsistent, think that the block in the second flash memory 148 is bad block, the block of backup in the first flash memory 146 is returned to replace damaged block in the second flash memory 148 by Basic Input or Output System (BIOS).Cyclic redundancy check (CRC) code is whether the information of receiving for Basic Input or Output System (BIOS) inspection is consistent with backup configuration table 120 canned data, because the verification method of cyclic redundancy check (CRC) code is in the present embodiment for the conventional method of those skilled in the art, therefore repeat no more.
Refer to Fig. 4, for mainboard 10 of the present invention backs up the process flow diagram of method one embodiment of substrate management control system 110.This method is used for the mainboard 10 of Fig. 1 or Fig. 3, and completes by the functional module shown in Fig. 1 or Fig. 3.
At step S400, select module 104 from backup configuration table 120, screen and need the group that backs up according to the information whether backing up.
At step S402, select module 104 also to select the highest group of backup order for the information according to backup order from backup configuration table 120.
At step S404, whether the block that computing module 106 belongs to according to the information check of Last Backup time and backup cycle the group that backup order is the highest arrives this BACKUP TIME.In the time that definite block that belongs to the group that backup order is the highest arrives this BACKUP TIME, perform step S406, calculate the required storage space of block that belongs to the group that backup order is the highest in the second flash memory 148.In the time that definite block that belongs to the group that backup order is the highest does not arrive this BACKUP TIME, perform step S412, check and whether also have group to need backup.
At step S408, whether backup module 108 is for enough according to the remaining storage space of space inspection the first flash memory 146 calculating, in the time determining that in the first flash memory 146, remaining storage space is enough, carry out step S410 the block that belongs to the group that backup order is the highest in the second flash memory 148 is backuped in the first flash memory 146.
At step S412, select module 104 also whether to also have group to need backup for checking, and in the time also having group to back up, carry out S414, select the group of next backup order to back up.
Please refer to Fig. 5, for the refinement process flow diagram that the step S410 in Fig. 4 backups to the second flash memory 148 method one embodiment of the first flash memory 146, for the mainboard 10 of Fig. 3, and complete by the functional module shown in Fig. 3.
At step S500, mainboard chip 142 is controlled the passage conducting that Port Multiplier 144 is connected with the second flash memory 148.In step S502, mainboard chip 142 is sent to the block that needs backup in the second flash memory 148 in storer 140 and does temporarily to store.In step S504, mainboard chip 142 is controlled the passage conducting that Port Multiplier 144 is connected with the first flash memory 146.In step S506, the block that is temporarily stored in storer 140 is sent to the first flash memory 146 and does permanent storage, and delete this and be temporarily stored in the block of storer 140.
Particularly, refer to Fig. 6, for mainboard 10 of the present invention recovers the process flow diagram of an embodiment in the time that substrate management control system 110 is damaged.This method is used for the mainboard 10 shown in Fig. 1 or Fig. 3, and completes by the functional module shown in Fig. 1 or Fig. 3.
After mainboard 10 starts, whether Basic Input or Output System (BIOS) just starts to detect BMC110 and damages.Specifically, at step S602, Basic Input or Output System (BIOS) sends IPMI order to BMC110.At step S604, Basic Input or Output System (BIOS) is confirmed whether to detect the response of BMC110 to IPMI order.
In the time that Basic Input or Output System (BIOS) does not receive that BMC110 responds the order of this IPMI,, at step S606, Basic Input or Output System (BIOS) is compared the cyclic redundancy check (CRC) code of backup configuration table 120 and the cyclic redundancy check (CRC) code that the second flash memory 148 calculates one by one.
When the cyclic redundancy check (CRC) code that calculates when cyclic redundancy check (CRC) code and second flash memory 148 of backup configuration table 120 is inconsistent, at step S608, think that the block in the second flash memory 148 is bad block, the block of backup in the first flash memory 146 is returned to replace damaged block in the second flash memory 148 by Basic Input or Output System (BIOS).
With respect to prior art, embodiment of the present invention provides a kind of mainboard 10 and mainboard 10 with data backup to back up BMC110 data back up method, by BMC110 data being sent to storage in the first flash memory 146, make full use of the remaining space of the first flash memory 146, the first flash memory 146 can be the flash memory of Basic Input or Output System (BIOS), the internal memory that the internal memory of physical database etc. previously just had on mainboard 10, to utilize the first existing internal memory 146 of these mainboards 10 to provide sufficient backup space to the second flash memory 148, thereby be embodied as BMC110 sufficient information back-up is provided, to reach the object of fast restore BMC110.
Be understandable that, for the person of ordinary skill of the art, can make other various corresponding changes and distortion by technical conceive according to the present invention, and all these change the protection domain that all should belong to the claims in the present invention with distortion.