US 11,886,869 B2
Information processing device and information processing method for updating a program by partially relocating the program
Hirokazu Tamano, Osaka (JP); Takahiko Kamitsuji, Osaka (JP); and Daiki Matsuda, Osaka (JP)
Assigned to PANASONIC INTELLECTUAL PROPERTY MANAGEMENT CO., LTD., Osaka (JP)
Filed by Panasonic Intellectual Property Management Co., Ltd., Osaka (JP)
Filed on Dec. 28, 2021, as Appl. No. 17/563,833.
Application 17/563,833 is a continuation of application No. PCT/JP2021/000757, filed on Jan. 13, 2021.
Claims priority of application No. 2020-014785 (JP), filed on Jan. 31, 2020.
Prior Publication US 2022/0121440 A1, Apr. 21, 2022
Int. Cl. G06F 9/44 (2018.01); G06F 8/658 (2018.01); G06F 11/36 (2006.01)
CPC G06F 8/658 (2018.02) [G06F 11/3688 (2013.01)] 6 Claims
OG exemplary drawing
 
1. An information processing device comprising:
a first controller, including at least one processor;
a storage in which a first program is stored, the first program being a program executed when the first controller starts; and
a second controller, including at least one processor different from the at least one processor included in the first controller, that provides the first controller with the storage as a virtual storage, obtains data for updating the first program from an external device and updates the first program to a second program by use of the data obtained, wherein
for each of a plurality of first partial areas obtained by dividing a first storage area that is a storage area of the storage in which the first program is stored, the second controller copies a first partial program that is a part of the first program and that is stored in the first partial area to a second storage area different from the first storage area, and then successively updates the first partial program to a second partial program that is a part of the second program by use of partial data of the data, the partial data corresponding to the first partial program,
the data is difference information indicating a difference between the first program and the second program,
the second storage area has a storage capacity smaller than a storage capacity of the first storage area, and
when the first controller has accessed the virtual storage while the second controller is updating the first program,
(i) when an area accessed by the first controller is a first partial area included in the plurality of first partial areas that has been subjected to an updating process, the second controller provides the first controller with the second partial program stored in the first partial area,
(ii) when the area accessed is a first partial area that is being subjected to the updating process, the second controller generates a second partial program updated from a first partial program stored in the second storage area by use of the first partial program and partial data of the data, the partial data corresponding to the first partial program, and provides the first controller with the second partial program generated, and
(iii) when the area accessed is a first partial area that has not been subjected to the updating process, the second controller generates a second partial program updated from a first partial program stored in the first storage area by use of the first partial program and partial data of the data, the partial data corresponding to the first partial program, and provides the first controller with the second partial program generated.