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,...
Main Author: | |
---|---|
Format: | Others |
Language: | English |
Published: |
KTH, Skolan för elektroteknik och datavetenskap (EECS)
2021
|
Subjects: | |
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 |