{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,19]],"date-time":"2025-06-19T04:28:16Z","timestamp":1750307296346,"version":"3.41.0"},"reference-count":16,"publisher":"Association for Computing Machinery (ACM)","issue":"1","license":[{"start":{"date-parts":[[2010,11,1]],"date-time":"2010-11-01T00:00:00Z","timestamp":1288569600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.acm.org\/publications\/policies\/copyright_policy#Background"}],"funder":[{"DOI":"10.13039\/100000144","name":"Division of Computer and Network Systems","doi-asserted-by":"publisher","award":["CNS-0712926CNS-0448668"],"award-info":[{"award-number":["CNS-0712926CNS-0448668"]}],"id":[{"id":"10.13039\/100000144","id-type":"DOI","asserted-by":"publisher"}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Des. Autom. Electron. Syst."],"published-print":{"date-parts":[[2010,11]]},"abstract":"<jats:p>Firmware update over a network connection is an essential but expensive feature for many embedded systems due to not only the relatively high power consumption and limited bandwidth, but also page-granular erasure before rewriting to flash memory. This work proposes a page-level, link-time technique that minimizes not only the size of patching scripts but also perturbation to the firmware memory, over the entire sequence of updates in the system\u2019s lifetime. We propose a tool that first clusters functions to minimize caller-callee dependency across pages, and then orders the functions within each page to minimize intrapage perturbation. Experimental results show our technique to reduce the energy consumption of firmware update by 30--42% over the state-of-the-art. Most importantly, this is the first work that has ever shown to evolve well over 41 revisions of a real-world open-source real-time operating system.<\/jats:p>","DOI":"10.1145\/1870109.1870116","type":"journal-article","created":{"date-parts":[[2010,12,1]],"date-time":"2010-12-01T20:18:10Z","timestamp":1291234690000},"page":"1-26","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":6,"title":["Energy-Efficient Progressive Remote Update for Flash-Based Firmware of Networked Embedded Systems"],"prefix":"10.1145","volume":"16","author":[{"given":"Jinsik","family":"Kim","sequence":"first","affiliation":[{"name":"University of California, Irvine"}]},{"given":"Pai H.","family":"Chou","sequence":"additional","affiliation":[{"name":"University of California, Irvine and National Tsing Hua University"}]}],"member":"320","published-online":{"date-parts":[[2010,11]]},"reference":[{"key":"e_1_2_1_1_1","unstructured":"Atmel Corporation. 2008. AT29C010A full data sheet :1-megabit 5-volt only flash memory. http:\/\/www.atmel.com\/dyn\/resources\/prod_documents\/doc0394.pdf. Atmel Corporation . 2008. AT29C010A full data sheet :1-megabit 5-volt only flash memory. http:\/\/www.atmel.com\/dyn\/resources\/prod_documents\/doc0394.pdf."},{"key":"e_1_2_1_2_1","doi-asserted-by":"publisher","DOI":"10.1109\/32.859533"},{"volume-title":"Proceedings of the 1st Annual IEEE Communications Society Conference on Sensor and Ad Hoc Communications and Networks (IEEE SECON). IEEE Computer Society, 25--33","author":"Jeong J.","key":"e_1_2_1_3_1"},{"key":"e_1_2_1_4_1","unstructured":"Kim J. 2010. Remote progessive firmware update project. http:\/\/rpfu.sourceforge.net\/. Kim J. 2010. Remote progessive firmware update project. http:\/\/rpfu.sourceforge.net\/."},{"volume-title":"Proceedings of the 2nd European Workshop. IEEE Press, 354--365","author":"Koshy J.","key":"e_1_2_1_5_1"},{"key":"e_1_2_1_6_1","doi-asserted-by":"publisher","DOI":"10.1145\/1250734.1250778"},{"key":"e_1_2_1_7_1","unstructured":"Littlefair T. 2006. CCCC -- C and C++ Code Counter. http:\/\/cccc.sourceforge.net\/. Littlefair T. 2006. CCCC -- C and C++ Code Counter. http:\/\/cccc.sourceforge.net\/."},{"key":"e_1_2_1_8_1","doi-asserted-by":"publisher","DOI":"10.1007\/11669463_17"},{"key":"e_1_2_1_9_1","doi-asserted-by":"publisher","DOI":"10.1109\/TSE.1976.233837"},{"key":"e_1_2_1_10_1","doi-asserted-by":"publisher","DOI":"10.1109\/BSN.2006.21"},{"key":"e_1_2_1_11_1","doi-asserted-by":"publisher","DOI":"10.1145\/1017753.1017775"},{"key":"e_1_2_1_12_1","unstructured":"Real Time Engineers Ltd. 2010. FreeRTOS free portable open source royalty free mini real time kernel. http:\/\/www.freertos.org\/. Real Time Engineers Ltd. 2010. FreeRTOS free portable open source royalty free mini real time kernel. http:\/\/www.freertos.org\/."},{"key":"e_1_2_1_13_1","doi-asserted-by":"publisher","DOI":"10.1145\/941350.941359"},{"key":"e_1_2_1_14_1","unstructured":"SDCC. 2009. Small device C compiler. http:\/\/sdcc.sourceforge.net\/. SDCC . 2009. Small device C compiler. http:\/\/sdcc.sourceforge.net\/."},{"key":"e_1_2_1_15_1","unstructured":"Tridgell A. and Mackerras P. 1996. The rsync algorithm. Tech. rep. TR-CS-96-05 Department of Computer Science The Australian National University. June. Tridgell A. and Mackerras P. 1996. The rsync algorithm. Tech. rep. TR-CS-96-05 Department of Computer Science The Australian National University. June."},{"key":"e_1_2_1_16_1","doi-asserted-by":"publisher","DOI":"10.1145\/1159974.1134653"}],"container-title":["ACM Transactions on Design Automation of Electronic Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1870109.1870116","content-type":"unspecified","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/1870109.1870116","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,18]],"date-time":"2025-06-18T10:59:47Z","timestamp":1750244387000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/1870109.1870116"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2010,11]]},"references-count":16,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2010,11]]}},"alternative-id":["10.1145\/1870109.1870116"],"URL":"https:\/\/doi.org\/10.1145\/1870109.1870116","relation":{},"ISSN":["1084-4309","1557-7309"],"issn-type":[{"type":"print","value":"1084-4309"},{"type":"electronic","value":"1557-7309"}],"subject":[],"published":{"date-parts":[[2010,11]]},"assertion":[{"value":"2010-03-01","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2010-09-01","order":1,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2010-11-01","order":2,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}