Ellinor Westerberg

Efficient delta based updates forread-only file system images

This thesis investigates a method for efficiently updating the software of an ECU in a car. The patch sent to the car should be as small as possible and optimally only contain the changed part of the software. A popular algorithm for creating the patch is bsdiff. However, it is not made for filesystem images, but for binaries. Therefore, an alternative is investigated. The alternative algorithm method is based on the update engine in Android.

A standalone version of the Android A/B update is implemented and compared to bsdiff, in aspect of the time it takes to generate the patch and the size of the patch. The result shows that bsdiff generates as slightly smaller patch. However, bsdiff is also a lot slower at generating the patch. Furthermore, the time increases exponentially with the size of the filesystem image. This gives reason to believe that the Android A/B update algorithm is a better solution when updating an ECU that contains a full filesystem.