An apparatus for verifying the completeness and compatibility of software components in an electronic control unit, characterized in that it comprises: a bootloader and a CompleteCompatible verification component, where the bootloader is arranged to, upon start-up of the electronic control unit, verify the completeness and compatibility of the CompleteCompatible verification component through: reading a StartCompleteCompatibleSignature from a predetermined memory address in an associated memory; checking if the StartCompleteCompatibleSignature is valid; if found that the StartCompleteCompatibleSignature is valid reading the EndCompleteCompatibleSignature from a predetermined memory address in an associated memory; checking if the EndCompleteCompatibleSignature is valid, and upon such verification being positive initiate the CompleteCompatible verification component, where the CompleteCompatible verification component is arranged to, upon performance thereof, verify the completeness and compatibility of further software components in the electronic control unit through performing: checking that a respective start and stop address as well as a version number for each further software component is correct; and returning a value to the bootloader indicative of whether all software components in the electronic control unit are complete and compatible; if the returned value indicates that all components of the software are complete and compatible an ApplicationStartAdress for executing the further software components of the ECU is read and a jump to the thus read ApplicationStartAdress is performed and the further software components are executed. a bootloader and a CompleteCompatible verification component, where the bootloader is arranged to, upon start-up of the electronic control unit, verify the completeness and compatibility of the CompleteCompatible verification component through: reading a StartCompleteCompatibleSignature from a predetermined memory address in an associated memory; checking if the StartCompleteCompatibleSignature is valid; if found that the StartCompleteCompatibleSignature is valid reading the EndCompleteCompatibleSignature from a predetermined memory address in an associated memory; checking if the EndCompleteCompatibleSignature is valid, and upon such verification being positive initiate the CompleteCompatible verification component, where the CompleteCompatible verification component is arranged to, upon performance thereof, verify the completeness and compatibility of further software components in the electronic control unit through performing: checking that a respective start and stop address as well as a version number for each further software component is correct; and returning a value to the bootloader indicative of whether all software components in the electronic control unit are complete and compatible; if the returned value indicates that all components of the software are complete and compatible an ApplicationStartAdress for executing the further software components of the ECU is read and a jump to the thus read ApplicationStartAdress is performed and the further software components are executed. reading a StartCompleteCompatibleSignature from a predetermined memory address in an associated memory; checking if the StartCompleteCompatibleSignature is valid; if found that the StartCompleteCompatibleSignature is valid reading the EndCompleteCompatibleSignature from a predetermined memory address in an associated memory; checking if the EndCompleteCompatibleSignature is valid, and upon such verification being positive initiate the CompleteCompatible verification component, where the CompleteCompatible verification component is arranged to, upon performance thereof, verify the completeness and compatibility of further software components in the electronic control unit through performing: checking that a respective start and stop address as well as a version number for each further software component is correct; and returning a value to the bootloader indicative of whether all software components in the electronic control unit are complete and compatible; if the returned value indicates that all components of the software are complete and compatible an ApplicationStartAdress for executing the further software components of the ECU is read and a jump to the thus read ApplicationStartAdress is performed and the further software components are executed. checking that a respective start and stop address as well as a version number for each further software component is correct; and returning a value to the bootloader indicative of whether all software components in the electronic control unit are complete and compatible; if the returned value indicates that all components of the software are complete and compatible an ApplicationStartAdress for executing the further software components of the ECU is read and a jump to the thus read ApplicationStartAdress is performed and the further software components are executed.