An information processing device includes: a BIOS flash ROM that is connected to a shared memory having an alternative BIOS written therein and being accessible using a MMIO, and that stores a currently used BIOS; a processor that can execute the currently used BIOS immediately after resetting; and a retaining means for retaining a setting indicating whether updating of the currently used BIOS is possible. The BIOS includes: a procedure for executing determination as to whether updating is possible after initialization necessary for executing the determination; a procedure for executing initialization necessary for updating the currently used BIOS to the alternative BIOS read from the shared memory, if updating is possible; a procedure for executing updating if updating is possible; a procedure for executing initialization necessary for operating the information processing device if updating is impossible; and a procedure for calling a boot loader if updating is impossible.
Legal claims defining the scope of protection, as filed with the USPTO.
1. An information processing system comprising: a shared memory being able to write and read data using memory mapped I/O; a BIOS data writing device being able to write desired substitution BIOS data being BIOS data onto the shared memory; and an information processing device including a BIOS flash that non-volatilely stores currently used BIOS data being the BIOS data, a processor being able to execute, immediately after resetting, a BIOS code included in the BIOS data stored on the BIOS flash, and an update setting retaining unit configured to retain an update setting indicating whether the currently used BIOS data stored on the BIOS flash are updatable to the substitution BIOS data, wherein the BIOS code causes the processor to execute an update determination procedure of executing, after executing an initialization necessary for executing a determination procedure of determining whether the update setting acquired from the update setting retaining unit is updatable, the determination procedure, an update-time initialization procedure of executing, when a determination result by the update determination procedure is updatable, an initialization necessary for executing an update procedure of updating the currently used BIOS data stored on the BIOS flash to the substitution BIOS data read from the shared memory, a BIOS update procedure of executing the update procedure when a determination result by the update determination procedure is updatable, a non-update-time initialization procedure of executing, when a determination result by the update determination procedure is not updatable, an initialization necessary for an operation of the information processing device, and a boot-loader call procedure of calling a boot loader when a determination result by the update determination procedure is not updatable.
2. The information processing system according to claim 1 , wherein the BIOS data writing device is operable, regardless of whether the information processing device is started.
3. The information processing system according to claim 1 , wherein the update-time initialization procedure executes, when executing an initialization necessary for the update procedure, a minimum necessary initialization for executing the update procedure.
4. The information processing system according to claim 3 , wherein the information processing device further includes a random access memory, and the minimum necessary initialization for executing the update procedure does not include an initialization of the random access memory.
5. The information processing system according to claim 1 , wherein a length of the substitution BIOS data is larger than a storage capacity of the shared memory, and the BIOS code, in the BIOS update procedure, reads a portion of the substitution BIOS data from the shared memory and repeats directly writing the read portion onto the BIOS flash.
6. The information processing system according to claim 1 , wherein the BIOS update procedure modifies, after the update procedure is executed, the update setting retained in the update setting retaining unit to be not updatable.
7. The information processing system according to claim 1 , wherein the non-update-time initialization procedure modifies, when execution of an initialization necessary for an operation of the information processing device fails, the update setting retained in the update setting retaining unit to be updatable.
8. The information processing system according to claim 1 , wherein the BIOS update procedure resets the processor after the update setting is modified.
9. The information processing system according to claim 1 , wherein the information processing device includes the shared memory.
10. A BIOS update method of an information processing device being connected to a shared memory on which desired substitution BIOS data being BIOS data are written, the shared memory being able to write and read data using memory mapped I/O, the device including a BIOS flash that non-volatilely stores currently used BIOS data being the BIOS data, a processor being able to execute, immediately after resetting, a BIOS code included in the BIOS data stored on the BIOS flash, and an update setting retaining unit configured to retain an update setting indicating whether the currently used BIOS data stored on the BIOS flash are updatable to the substitution BIOS data, wherein the BIOS code executes an update determination procedure of executing, after executing an initialization necessary for executing a determination procedure of determining whether the update setting acquired from the update setting retaining unit is updatable, the determination procedure, an update-time initialization procedure of executing, when a determination result by the update determination procedure is updatable, an initialization necessary for executing an update procedure of updating the currently used BIOS data stored on the BIOS flash to the substitution BIOS data read from the shared memory, a BIOS update procedure of executing the update procedure when a determination result by the update determination procedure is updatable, a non-update-time initialization procedure of executing, when a determination result by the update determination procedure is not updatable, an initialization necessary for an operation of the information processing device, and a boot-loader call procedure of calling a boot loader when a determination result by the update determination procedure is not updatable.
11. A non-transitory storage medium storing a BIOS update program of an information processing device, the program causing a computer included in the information processing device being connected to a shared memory on which desired substitution BIOS data being BIOS data are written, the shared memory being able to write and read data using memory mapped I/O, the device including a BIOS flash that non-volatilely stores currently used BIOS data being the BIOS data, a processor being able to execute, immediately after resetting, a BIOS code included in the BIOS data stored on the BIOS flash, and an update setting retaining unit configured to retain an update setting indicating whether the currently used BIOS data stored on the BIOS flash are updatable to the substitution BIOS data, to execute: an update determination procedure of executing, after executing an initialization necessary for executing a determination procedure of determining whether the update setting acquired from the update setting retaining unit is updatable, the determination procedure; an update-time initialization procedure of executing, when a determination result by the update determination procedure is updatable, an initialization necessary for executing an update procedure of updating the currently used BIOS data stored on the BIOS flash to the substitution BIOS data read from the shared memory; a BIOS update procedure of executing the update procedure when a determination result by the update determination procedure is updatable; a non-update-time initialization procedure of executing, when a determination result by the update determination procedure is not updatable, an initialization necessary for an operation of the information processing device; and a boot-loader call procedure of calling a boot loader when a determination result by the update determination procedure is not updatable.
12. The information processing system according to claim 2 , wherein the update-time initialization procedure executes, when executing an initialization necessary for the update procedure, a minimum necessary initialization for executing the update procedure.
13. The information processing system according to claim 12 , wherein the information processing device further includes a random access memory, and the minimum necessary initialization for executing the update procedure does not include an initialization of the random access memory.
14. The information processing system according to claim 2 , wherein a length of the substitution BIOS data is larger than a storage capacity of the shared memory, and the BIOS code, in the BIOS update procedure, reads a portion of the substitution BIOS data from the shared memory and repeats directly writing the read portion onto the BIOS flash.
15. The information processing system according to claim 3 , wherein a length of the substitution BIOS data is larger than a storage capacity of the shared memory, and the BIOS code, in the BIOS update procedure, reads a portion of the substitution BIOS data from the shared memory and repeats directly writing the read portion onto the BIOS flash.
16. The information processing system according to claim 12 , wherein a length of the substitution BIOS data is larger than a storage capacity of the shared memory, and the BIOS code, in the BIOS update procedure, reads a portion of the substitution BIOS data from the shared memory and repeats directly writing the read portion onto the BIOS flash.
17. The information processing system according to claim 4 , wherein a length of the substitution BIOS data is larger than a storage capacity of the shared memory, and the BIOS code, in the BIOS update procedure, reads a portion of the substitution BIOS data from the shared memory and repeats directly writing the read portion onto the BIOS flash.
18. The information processing system according to claim 13 , wherein a length of the substitution BIOS data is larger than a storage capacity of the shared memory, and the BIOS code, in the BIOS update procedure, reads a portion of the substitution BIOS data from the shared memory and repeats directly writing the read portion onto the BIOS flash.
19. The information processing system according to claim 2 , wherein the BIOS update procedure modifies, after the update procedure is executed, the update setting retained in the update setting retaining unit to be not updatable.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
February 5, 2019
April 26, 2022
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.