Skip to main content
Login | Suomeksi | På svenska | In English

Dynamic Linking in WebAssembly : Architecture and Performance Evaluation

Show full item record

Title: Dynamic Linking in WebAssembly : Architecture and Performance Evaluation
Author(s): Bankowski, Victor
Contributor: University of Helsinki, Faculty of Science
Degree program: Master's Programme in Computer Science
Specialisation: Software systems
Language: English
Acceptance year: 2021
WebAssembly (WASM) is a binary instruction format for a stack-based virtual machine originally designed for the Web but also capable of being run on outside of the browser contexts. The WASM binary format is designed to be fast to transfer, load and execute. WASM programs are designed to be safe to execute by running them in a memory safe sandboxed environment. Combining dynamic linking with WebAssembly could allow the creation of adaptive modular applications that are cross-platform and sandboxed but still fast to execute and load. This thesis explores implementing dynamic linking in WebAssembly. Two artifacts are presented: a dynamic linking runtime prototype which exposes a POSIX-like host function interface for modules and an Android GUI interfacing prototype built on top of the runtime. In addition the results of measurements which were performed on both artefacts are presented. Dynamic linking does improve the memory usage and the startup time of applications when only some modules are needed. However if all modules are needed immediately then dynamic linked applications. perform worse than statically linked applications. Based on the results, dynamically linking WebAssembly modules could be a viable technology for PC and Android. The poor performance of A Raspberry Pi in the measurements indicates that dynamic linking might not be viable for resource contrained system especially if applications are performance critical.
Keyword(s): dynamic linking WebAssembly

Files in this item

Files Size Format View
Dynamic_linking ... Performance_Evaluation.pdf 1011.Kb PDF

This item appears in the following Collection(s)

Show full item record