Meaning
Firmware execution begins with a small code segment responsible for validating and loading the main application into system memory. A micro-bootloader resides in a protected area of flash storage to ensure the device can always recover from a software failure. It acts as the root of trust during the power-on reset.
Startup Sequence
Hardware checks occur before the processor hands control over to the primary operating system. The micro-bootloader verifies the cryptographic signature of the main image to prevent the execution of unauthorized code. If the check fails, the device stays in a safe state.
Update Management
External interfaces like serial ports or radio modules allow the delivery of new binary files. During a firmware update, the micro-bootloader writes the incoming data to a secondary memory bank. This ensures that the original software remains intact until the new version is fully verified.
The process includes a checksum verification to catch any corruption that occurred during the transfer over the air.
Memory Footprint
Optimization is necessary because space in the primary boot block is often limited to a few kilobytes. A micro-bootloader lacks a user interface and focuses entirely on the transport and verification of the application image. Its simplicity reduces the surface area for security vulnerabilities.