Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU

This thesis investigates a method for efficiently updating the software of an Electronic Control Unit (ECU) in a car. The patch sent to the car should be as small as possible and optimally only contained the changed part of the software. A popular algorithm for creating the patch is bsdiff. However,...

Full description

Bibliographic Details
Main Author: Westerberg, Ellinor
Format: Others
Language:English
Published: KTH, Skolan för elektroteknik och datavetenskap (EECS) 2021
Subjects:
ECU
Online Access:http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-291740
id ndltd-UPSALLA1-oai-DiVA.org-kth-291740
record_format oai_dc
spelling ndltd-UPSALLA1-oai-DiVA.org-kth-2917402021-03-20T05:27:26ZEfficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECUengEn tillämpad studie om effektiv uppdatering av mjukvaran i en styrenhetWesterberg, EllinorKTH, Skolan för elektroteknik och datavetenskap (EECS)2021Andorid A/B UpdateAndroid Update EnginebsdiffDelta UpdatesDmveriyECUAndorid A/B UpdateAndroid Update EnginebsdiffDelta-UpdateringDmveriyECUComputer and Information SciencesData- och informationsvetenskapThis thesis investigates a method for efficiently updating the software of an Electronic Control Unit (ECU) in a car. The patch sent to the car should be as small as possible and optimally only contained 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 the aspect of the time it takes to generate the patch and the size of the patch. The result shows that bsdiff generates a slightly smaller patch. However, bsdiff is also a lot slower at generating the patch. Furthermore, the time increases linearithmic with the size of the filesystem image. This gives reason to believe that the Android A/B Update algorithm might be a better solution when updating an ECU that contains a full filesystem. However, this depends on if it is most valuable that the patch is as small as possible, or that the process of generating it is fast.  Detta examensarbete undersöker en metod för att effektivt uppdatera mjukvaran i en styrenhet i en bil. En patch som skickas till en bil ska vara så liten som möjligt och helst enbart innehålla de delar av mjukvaran som ändrats. En populär algorithm för att skapa en sådan patch är bsdiff. Den är dock inte gjord för filsystemsavbildningar, utan för binärer. Därför studeras här ett alternativ. Denna alternativa metod är baserad på Androids updateringsprocess. En fristående variant av Android A/B Update är implementerad och och jämförd med bsdiff, med avseende på tiden det tar att generera en patch och storleken av den. Resultatet visar att bsdiff genererar mindre patchar. Däremot är bsdiff också betydligt långsammare. Vidare ökar tiden linearitmisk då storleken på patchen ökar. Detta innebär att Android A/B Update kan vara en bättre lösning för att updatera en styrenhet som innehåller ett filsystem. Det beror dock på vad som värderas högst; en mindre patch eller att processen att skapa patchen ska vara snabbare. Student thesisinfo:eu-repo/semantics/bachelorThesistexthttp://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-291740TRITA-EECS-EX ; 2021:60application/pdfinfo:eu-repo/semantics/openAccess
collection NDLTD
language English
format Others
sources NDLTD
topic Andorid A/B Update
Android Update Engine
bsdiff
Delta Updates
Dmveriy
ECU
Andorid A/B Update
Android Update Engine
bsdiff
Delta-Updatering
Dmveriy
ECU
Computer and Information Sciences
Data- och informationsvetenskap
spellingShingle Andorid A/B Update
Android Update Engine
bsdiff
Delta Updates
Dmveriy
ECU
Andorid A/B Update
Android Update Engine
bsdiff
Delta-Updatering
Dmveriy
ECU
Computer and Information Sciences
Data- och informationsvetenskap
Westerberg, Ellinor
Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU
description This thesis investigates a method for efficiently updating the software of an Electronic Control Unit (ECU) in a car. The patch sent to the car should be as small as possible and optimally only contained 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 the aspect of the time it takes to generate the patch and the size of the patch. The result shows that bsdiff generates a slightly smaller patch. However, bsdiff is also a lot slower at generating the patch. Furthermore, the time increases linearithmic with the size of the filesystem image. This gives reason to believe that the Android A/B Update algorithm might be a better solution when updating an ECU that contains a full filesystem. However, this depends on if it is most valuable that the patch is as small as possible, or that the process of generating it is fast.  === Detta examensarbete undersöker en metod för att effektivt uppdatera mjukvaran i en styrenhet i en bil. En patch som skickas till en bil ska vara så liten som möjligt och helst enbart innehålla de delar av mjukvaran som ändrats. En populär algorithm för att skapa en sådan patch är bsdiff. Den är dock inte gjord för filsystemsavbildningar, utan för binärer. Därför studeras här ett alternativ. Denna alternativa metod är baserad på Androids updateringsprocess. En fristående variant av Android A/B Update är implementerad och och jämförd med bsdiff, med avseende på tiden det tar att generera en patch och storleken av den. Resultatet visar att bsdiff genererar mindre patchar. Däremot är bsdiff också betydligt långsammare. Vidare ökar tiden linearitmisk då storleken på patchen ökar. Detta innebär att Android A/B Update kan vara en bättre lösning för att updatera en styrenhet som innehåller ett filsystem. Det beror dock på vad som värderas högst; en mindre patch eller att processen att skapa patchen ska vara snabbare.
author Westerberg, Ellinor
author_facet Westerberg, Ellinor
author_sort Westerberg, Ellinor
title Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU
title_short Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU
title_full Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU
title_fullStr Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU
title_full_unstemmed Efficient delta based updates for read-only filesystem images : An applied study in how to efficiently update the software of an ECU
title_sort efficient delta based updates for read-only filesystem images : an applied study in how to efficiently update the software of an ecu
publisher KTH, Skolan för elektroteknik och datavetenskap (EECS)
publishDate 2021
url http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-291740
work_keys_str_mv AT westerbergellinor efficientdeltabasedupdatesforreadonlyfilesystemimagesanappliedstudyinhowtoefficientlyupdatethesoftwareofanecu
AT westerbergellinor entillampadstudieomeffektivuppdateringavmjukvaranienstyrenhet
_version_ 1719384010555129856