Firmware modification system wherein older version can be retrieved
First Claim
1. A program modification system, comprising:
- a processor executing a program;
working program holding means for holding the program executed by said processor,fixed program data storing means for storing an initial version of the program;
modification data storing means for storing modification data, where said modification data storing means is accessible externally for writing the modification data into said modification data storing means;
fixed program data loading means for reading said initial version of the program from said fixed program data storing means, and loading said initial version of the program into said working program holding means;
working program modifying means for modifying the program loaded in said working program holding means using said modification data stored in said modification data storing means where said modification data contains versions of said modification data; and
modification version command means for commanding said working program modifying means to modify the program loaded in said working program holding means with the modification data up to a specific one of the versions; and
said working program modifying means modifying the program held in said working program holding means with the modification data up to the specific one of the versions in an order of the versions from the oldest to the newest when a version command is received.
0 Assignments
0 Petitions
Accused Products
Abstract
A firmware modification system in a data processing apparatus, containing a processor for executing a program and a working program holding unit for holding therein data of the program executed by the processor. The system also includes fixed program data storing unit for storing a fixed program data and a modification data storing unit for storing modification data with which the fixed program data is to be modified, where the modification data storing unit is accessible from outside of the data processing apparatus for writing the modification data therein. A fixed program data loading unit is used for reading from the fixed program data storing unit, and loading the fixed program data in the working program holding unit to hold the fixed program data therein, and a working program modifying unit is used for modifying data of the program which is held in the working program holding unit, with the modification data stored in the modification data storing unit.
-
Citations
7 Claims
-
1. A program modification system, comprising:
-
a processor executing a program; working program holding means for holding the program executed by said processor, fixed program data storing means for storing an initial version of the program; modification data storing means for storing modification data, where said modification data storing means is accessible externally for writing the modification data into said modification data storing means; fixed program data loading means for reading said initial version of the program from said fixed program data storing means, and loading said initial version of the program into said working program holding means; working program modifying means for modifying the program loaded in said working program holding means using said modification data stored in said modification data storing means where said modification data contains versions of said modification data; and modification version command means for commanding said working program modifying means to modify the program loaded in said working program holding means with the modification data up to a specific one of the versions; and said working program modifying means modifying the program held in said working program holding means with the modification data up to the specific one of the versions in an order of the versions from the oldest to the newest when a version command is received. - View Dependent Claims (2, 3, 4)
-
-
5. A program modification system, comprising:
-
a processor for executing a program; working program holding means for holding therein data of said program executed by said processor; fixed program data storing means for storing a fixed data of the program; modification data storing means for storing modification data, where said modification data storing means is accessible externally for writing the modification data into said modification data storing means; fixed program data loading means for reading said fixed data of the program from said fixed program data storing means, and loading the fixed data of the program into said working program holding means to hold said fixed data of the program in said working program holding means; and working program modifying means for modifying said data of the program held in said working program holding means using said modification data stored in said modification data storing means, where said modification data contains versions of said modification data; and modification version command means for commanding said working program modifying means to modify the data of the program held in said working program holding means with the modification data up to a specific one of the versions in an order of the versions from the oldest to the newest when a version command is received; said plurality of versions of modification data are stored in said modification data storing means in a plurality of blocks respectively corresponding to the versions; each block for each version contains; an address of each data which is to be modified; new data of the address for said each version; and old data of the address for an older version which is older than said each version of the block by one version said working program modifying means modifies the data in said working program holding means in the order of the versions from the oldest to the newest; and said working program modifying means further comprising; data comparing means for comparing, before modifying the data in said working program holding means with a new version, said old data of the address as stored in the block of the modification data and the data currently contained in the same address in said working program holding means; and abnormal stop means for stopping the modifying operation when said old data of each address and the data of the same address in said working program holding means are determined to be not equal by said data comparing means.
-
-
6. A firmware modification system, comprising:
-
a non-volatile non-writable firmware memory storing an initial version of a program; a volatile memory coupled to said firmware memory and into which the initial version of the program is loaded; a non-volatile writable modification data memory storing modification data comprising modifications to the initial version of the program; and a processor, connected to said firmware memory, said volatile memory and said data memory, transferring the initial version of the program from said firmware memory to said volatile memory and modifying the initial version of the program responsive to the modifications stored in said data memory, and wherein said modification data comprises versions having a version order and said processor modifies the initial version of the program using the versions in the version order and said modification data further comprises current program data and replacement program data, and said processor compares the program to the current program data before modifying the program with the replacement program data. - View Dependent Claims (7)
-
Specification