Skip to main content

Lund University Publications

LUND UNIVERSITY LIBRARIES

Feedback linking : Optimizing object code layout for updates

Von Platen, Carl and Eker, Johan LU orcid (2006) In ACM SIGPLAN Notices 41(7). p.2-11
Abstract

Firmware over the air (FOTA) is becoming a standard procedure for maintaining and updating wireless embedded systems. To cope with bandwidth and storage constraints this is facilitated using incremental updates based on delta technology, i.e. only the modifications are transmitted. The performance of a FOTA update is highly dependent on the size of the delta, and the type of modifications. Application of a delta update involves mutating the present version, byte by byte, into the new version. The problem is that even the smallest change in the source code may cause almost every single memory position to be affected, and thus requiring the complete memory to be rewritten. This has two implications: First, the time spent updating memory... (More)

Firmware over the air (FOTA) is becoming a standard procedure for maintaining and updating wireless embedded systems. To cope with bandwidth and storage constraints this is facilitated using incremental updates based on delta technology, i.e. only the modifications are transmitted. The performance of a FOTA update is highly dependent on the size of the delta, and the type of modifications. Application of a delta update involves mutating the present version, byte by byte, into the new version. The problem is that even the smallest change in the source code may cause almost every single memory position to be affected, and thus requiring the complete memory to be rewritten. This has two implications: First, the time spent updating memory becomes unnecessary long. Secondly, and much worse, since a large part of the system is affected, the system is not functional during application. This paper introduces the concept of a feedback linker, which uses the object code layout of the previous version, when building a new version. The feedback linker maximizes the similarities between two versions allowing for smaller update packages and faster upgrades. The feedback linker is described in terms of an optimization procedure, an prototype test bed and a set of experimental results.

(Less)
Please use this url to cite or link to this publication:
author
and
publishing date
type
Contribution to journal
publication status
published
subject
keywords
Flash Memory, Incremental Software Update
in
ACM SIGPLAN Notices
volume
41
issue
7
pages
10 pages
publisher
Association for Computing Machinery (ACM)
external identifiers
  • scopus:33748999036
ISSN
0362-1340
DOI
10.1145/1159974.1134653
language
English
LU publication?
no
id
7c87af76-3eee-45a8-b371-ba4148fa29e0
date added to LUP
2023-11-23 11:13:15
date last changed
2023-12-01 11:33:30
@article{7c87af76-3eee-45a8-b371-ba4148fa29e0,
  abstract     = {{<p>Firmware over the air (FOTA) is becoming a standard procedure for maintaining and updating wireless embedded systems. To cope with bandwidth and storage constraints this is facilitated using incremental updates based on delta technology, i.e. only the modifications are transmitted. The performance of a FOTA update is highly dependent on the size of the delta, and the type of modifications. Application of a delta update involves mutating the present version, byte by byte, into the new version. The problem is that even the smallest change in the source code may cause almost every single memory position to be affected, and thus requiring the complete memory to be rewritten. This has two implications: First, the time spent updating memory becomes unnecessary long. Secondly, and much worse, since a large part of the system is affected, the system is not functional during application. This paper introduces the concept of a feedback linker, which uses the object code layout of the previous version, when building a new version. The feedback linker maximizes the similarities between two versions allowing for smaller update packages and faster upgrades. The feedback linker is described in terms of an optimization procedure, an prototype test bed and a set of experimental results.</p>}},
  author       = {{Von Platen, Carl and Eker, Johan}},
  issn         = {{0362-1340}},
  keywords     = {{Flash Memory; Incremental Software Update}},
  language     = {{eng}},
  number       = {{7}},
  pages        = {{2--11}},
  publisher    = {{Association for Computing Machinery (ACM)}},
  series       = {{ACM SIGPLAN Notices}},
  title        = {{Feedback linking : Optimizing object code layout for updates}},
  url          = {{http://dx.doi.org/10.1145/1159974.1134653}},
  doi          = {{10.1145/1159974.1134653}},
  volume       = {{41}},
  year         = {{2006}},
}