{"title":"Work-in-Progress: Fast Snapshot Migration Using Static Code Instrumentation","authors":"Jae-Yun Kim, Hyeon-Jae Lee, Soo-Mook Moon","doi":"10.1109/EMSOFT.2018.8537207","DOIUrl":null,"url":null,"abstract":"Due to the portability advantage of web apps, we can easily save the app execution state at a device and restore it at another device, allowing app migration. Since the execution of the application includes JavaScript internal states such as closures or event handlers, how to extract them is an issue. One approach is having the browser to provide new APIs [1], which allows fast migration, but requires modification of the browser. The other approach is instrumenting the web app source code [2], [3], which allows using the existing browser, however, suffering from the performance slowdown due to the overhead of instrumented code. This paper proposes a new instrumentation-based approach, which performs faster. The key idea is to introduce a reference table which is used to keep information of closures and event handlers at runtime by our instrumented code whose overhead is small. The reference table can be easily serialized as JavaScript code, and its execution at the target device allows efficient restoration of the execution state. Our preliminary experimental result shows that the performance of our instrumented code is almost the same as the original code.","PeriodicalId":375994,"journal":{"name":"2018 International Conference on Embedded Software (EMSOFT)","volume":"15 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2018 International Conference on Embedded Software (EMSOFT)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/EMSOFT.2018.8537207","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1
Abstract
Due to the portability advantage of web apps, we can easily save the app execution state at a device and restore it at another device, allowing app migration. Since the execution of the application includes JavaScript internal states such as closures or event handlers, how to extract them is an issue. One approach is having the browser to provide new APIs [1], which allows fast migration, but requires modification of the browser. The other approach is instrumenting the web app source code [2], [3], which allows using the existing browser, however, suffering from the performance slowdown due to the overhead of instrumented code. This paper proposes a new instrumentation-based approach, which performs faster. The key idea is to introduce a reference table which is used to keep information of closures and event handlers at runtime by our instrumented code whose overhead is small. The reference table can be easily serialized as JavaScript code, and its execution at the target device allows efficient restoration of the execution state. Our preliminary experimental result shows that the performance of our instrumented code is almost the same as the original code.