Patent ID: 8135533

Claim:
An electronic control apparatus comprising: a first storage means which is electrically rewritable and nonvolatile and in which engine control software for controlling an engine of a motor vehicle is stored; a second storage means whose contents are retainable when power to the electronic control apparatus is removed; and a processor that performs processes of executing the engine control software stored in the first storage means to control the engine, storing in the second storage means retention data that is generated through execution of the engine control software and to be retained even when power to the electronic control apparatus is removed, and rewriting the engine control software stored in the first storage means with engine control software sent from an external device or circuit upon receipt of a rewrite request from the external device or circuit, wherein the electronic control apparatus further comprises a third storage means whose contents are retainable when power to the electronic control apparatus is removed and in which a piece of specific information on the engine control software is stored, the processor further performs, when the electronic control apparatus is activated, an initialization control process which includes processes of extracting a piece of specific information on the engine control software from the first storage means, determining whether or not the piece of specific information extracted from the first storage means is coincident with that stored in the third storage means, initializing the retention data stored in the second storage means when the piece of specific information extracted from the first storage means is determined as being incoincident with that stored in the third storage means, and updating the piece of specific information stored in the third storage means with that extracted from the first storage means after completion of the initializing process, and the processor starts performing the process of executing the engine control software stored in the first storage means before completion of the initialization control process.