Software Update

The Software Update component provides a mechanism for safely updating the QNX CAR platform software.

During a normal boot sequence, the Bootloader loads the operating system into memory and brings the system up. During a software update, a different process takes effect. The user plugs in a USB key containing an update. In the Settings app, the Software Updates tab indicates that a new update is ready to be installed. When the user agrees to proceed with the update, the following occurs:

  1. The Update Bootloader temporarily takes the place of the Bootloader.
  2. The system is reset.
  3. The Update Bootloader applies the update.
  4. The normal Bootloader is again given responsibility for the boot process.
  5. The system is reset.
  6. The Bootloader loads the updated system.

The QNX Neutrino RTOS lets you install new features or upgrades on the fly (at both an application and driver level), performing dependency checks to ensure compatibility and allowing those new modules to be backed out to an earlier revision if required.

The unique architecture of the microkernel makes software updates easier and more reliable. For example, if the user obtains a new smartphone that requires a new device driver, the Software Update mechanism ensures that the new driver is used with new phones and that the older driver is used for older phones. This allows the system to be updated for new devices, yet minimizes the validation effort so that only the new devices require revalidation. Also, any software updates can be completely rolled back in the layer of a problem, leaving the system in its original state.