Publication | Closed Access
WiProg: A WebAssembly-based Approach to Integrated IoT Programming
32
Citations
21
References
2021
Year
Integrated Iot ProgrammingEngineeringWeb Of ThingEdge DeviceComputer ArchitectureSoftware EngineeringIot SystemIot InteroperabilitySystems EngineeringInternet Of ThingsIot ApplicationComputer EngineeringMobile ComputingComputer ScienceIot ArchitectureIot Data ManagementComplete Iot ApplicationIot Data AnalyticsEdge ComputingCloud ComputingUnikernelsIndustrial InformaticsDevelopment ProcessSystem Software
Programming a complete IoT application usually requires separated programming for device, edge and/or cloud sides, which slows down the development process and makes the project hardly portable. Existing solutions tackle this problem by proposing a single coherent language while leaving two issues unsolved: efficient migration among the three sides and the platform dependency of the binaries. We propose WiProg, an integrated approach to IoT application programming based on WebAssembly. WiProg proposes an edge-centric programming approach that enables developers to write the IoT application as if it runs on the edge. This is achieved by the peripheral-accessing SDKs and annotations specifying the computation placement. WiProg automatically processes the program to insert auxiliary code and then compile it to WebAssembly. At runtime, WiProg leverages dynamic code offloading with compact memory snapshotting to achieve efficient execution. WiProg also provides interfaces for the customization of offloading policies. Results on real-world applications and computation benchmarks show that WiProg achieves an average reduction by 18.7%~54.3% and 20.1%~57.6% in terms of energy consumption and execution time.
| Year | Citations | |
|---|---|---|
Page 1
Page 1