Software Update

The Software Update (SWU) feature for the QNX CAR platform provides a mechanism for safely updating your platform software.

The feature uses these components:

When you connect a USB mass-storage device to your system and the device contains a software update package, which consists of a manifest file and a delta file, the following occurs:

  1. The mcd utility detects the manifest file (which has a filename ending in .manifest) in the software update package and notifies swud.
  2. The swud daemon validates the update package by parsing the manifest file and the delta file (whose full path is specified in the manifest file). If the update package is not valid (e.g., the base version stated is wrong), swud logs an error (to slogger and to the HMI) and then stops the update process.
  3. If the update package is valid, swud notifies the HMI, which displays the pending update in the software update application.
  4. When ready, the user initiates the software update from the HMI.
  5. The swud service coordinates with the downsize utility to terminate all processes except those needed to perform the update (e.g., screen, disk drivers).
  6. After the nonessential processes have been terminated, swud updates the system based on the contents of the delta file.
  7. The system is rebooted and the newer version of the system now runs.
Figure 1. Software Update components detect and validate the software update package, downsize the system processes, and reboot the system to apply the update

The unique microkernel architecture of the QNX Neutrino RTOS makes software updates easy and reliable.  For example, if the user obtains a new smartphone that requires a new device driver, the Software Update mechanism ensures that the QNX CAR system uses the new driver with the new phone but an older driver with an older phone. This allows the system to be updated for new devices yet reduces the validation effort so that only the new devices require revalidation.

For more information on initiating software updates, see Software Updates in the User's Guide. For a detailed explanation of swud and how to generate a delta file, see Software Updates in the System Services Reference.