383 results on '"WebAssembly"'
Search Results
2. An Empirical Study on the Performance of EVMs and Wasm VMs for Smart Contract Execution
- Author
-
Song, Shuwei, Liao, Zhou, Chen, Ting, Luo, Xiapu, Zhang, Yongjie, Wang, Guopeng, Li, Gang, Series Editor, Filipe, Joaquim, Series Editor, Xu, Zhiwei, Series Editor, He, Debiao, editor, Wu, Jiajing, editor, Wang, Chen, editor, and Huang, Huawei, editor
- Published
- 2025
- Full Text
- View/download PDF
3. GPT-Based Wasm Instruction Analysis for Program Language Processing
- Author
-
Deng, Liangjun, Zhong, Qi, Lei, Hang, Qiu, Yao, Chen, Jingxue, Li, Gang, Series Editor, Filipe, Joaquim, Series Editor, Xu, Zhiwei, Series Editor, Li, Wenjuan, editor, Chen, Liqun, editor, and Lopez, Javier, editor
- Published
- 2025
- Full Text
- View/download PDF
4. WNSWE: Web-Based Network Simulator for Web Engineering Education
- Author
-
Heil, Sebastian, Schröder, Lucas, Gaedke, Martin, Goos, Gerhard, Series Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Barhamgi, Mahmoud, editor, Wang, Hua, editor, and Wang, Xin, editor
- Published
- 2025
- Full Text
- View/download PDF
5. Ring: A Lightweight and Versatile Cross-Platform Dynamic Programming Language Developed Using Visual Programming.
- Author
-
Fayed, Mahmoud Samir and Alohali, Yousef A.
- Subjects
VISUAL programming languages (Computer science) ,PROGRAMMING languages ,VIRTUAL machine systems ,OBJECT-oriented programming ,TECHNOLOGICAL innovations ,MICROCONTROLLERS - Abstract
New programming languages are often designed to keep up with technological advancements and project requirements while also learning from previous attempts and introducing more powerful expression mechanisms. However, most existing dynamic programming languages rely on English keywords and lack features that facilitate easy translation of language syntax. Additionally, maintaining multiple implementations of the same language for different platforms, such as desktops and microcontrollers, can lead to inconsistencies and fragmented features. Furthermore, they usually do not use visual programming to fully implement the compiler and virtual machine. In this research paper, we introduce Ring—a dynamically-typed language with a lightweight implementation. However, it boasts several advantages, including a rich and versatile standard library and direct support for classes and object-oriented programming. The Ring language offers customization features. For instance, it allows easy modification of the language syntax multiple times, enabling programming by writing code using Arabic, English, or other keywords. Additionally, the language permits the creation of domain-specific languages through new features that extend object-oriented programming, allowing for specialized languages resembling CSS or Supernova. In the era of the Internet of Things, instead of creating another language implementation to support microcontrollers, the same Ring implementation allows us to create projects and applications for desktops, the web, WebAssembly, Android, or Raspberry Pi Pico. The Ring Compiler and Virtual Machine are designed using the PWCT Visual Programming language based on ANSI C. The visual implementation is composed of 18,945 components that generate 24,743 lines of code, which increases the abstraction level by approximately 23.5% and hides unnecessary details. [ABSTRACT FROM AUTHOR]
- Published
- 2024
- Full Text
- View/download PDF
6. WasDom: An Efficient Write Protection for Wasm JITed Code With ARM Domain
- Author
-
Suhyeon Song, Chaewon Shin, and Donghyun Kwon
- Subjects
WebAssembly ,just-in-time compilation ,in-process isolation ,ARM domain ,Electrical engineering. Electronics. Nuclear engineering ,TK1-9971 - Abstract
WebAssembly (Wasm) is a binary instruction format designed to run web applications efficiently and securely across different browsers, including Chrome’s V8, Firefox’s SpiderMonkey, and Safari’s JavaScriptCore. While Wasm’s Just-In-Time (JIT) compilation offers significant performance benefits by converting wasm code into machine code (JITed code), it introduces security vulnerabilities by violating the W^X (Write XOR Execute) policy. Conventional methodologies, such as Intel MPK for safeguarding JITed code, are constrained to specific hardware and are ineffectual in mobile environments. Consequently, there is a necessity for the development of a ARM-compatible solution. This paper proposes WasDom, an efficacious write protection mechanism for wasm JITed code on ARM architecture. Leveraging ARM’s domain-based memory management, WasDom employs a randomized domain allocation strategy to permit multiple cores to access JITed code securely. The prototype of WasDom was implemented in the V8 runtime and demonstrated a minimal performance overhead of less than 11% while providing strong write protection. The system manages memory permissions dynamically through the Domain Access Control Register (DACR), ensuring that memory regions are writable during JIT compilation and executable during runtime, thus enforcing a strong W^X policy.
- Published
- 2025
- Full Text
- View/download PDF
7. Efficient Data Exchange between WebAssembly Modules.
- Author
-
Silva, Lucas, Metrôlho, José, and Ribeiro, Fernando
- Subjects
PROGRAMMING languages ,VIRTUAL machine systems ,DATA structures ,CODE generators ,WEB browsers - Abstract
In the past two decades, there has been a noticeable decoupling of machines and operating systems. In this context, WebAssembly has emerged as a promising alternative to traditional virtual machines. Originally designed for execution in web browsers, it has expanded to executing code in restricted and secure environments, and it stands out for its rapid startup, small footprint, and portability. However, WebAssembly presents significant challenges in data transfer and the management of interactions with the module. Its specification requires each module to have its own memory, resulting in a "share-nothing" architecture. This restriction, combined with the limitations of importing and exporting functions that only handle numerical values, and the absence of an application binary interface (ABI) for sharing more complex data structures, leads to efficiency problems; these are exacerbated by the variety of programming languages that can be compiled and executed in the same environment. To address this inefficiency, the Karmem was designed and developed. It includes a new interface description language (IDL) aimed at facilitating the definition of data, functions, and relationships between modules. Additionally, a proprietary protocol—an optimized ABI for efficient data reading and minimal decoding cost—was created. A code generator capable of producing code for various programming languages was also conceived, ensuring harmonious interaction with the ABI and the foreign function interface. Finally, the compact runtime of Karmem, built atop a WebAssembly runtime, enables communication between modules and shared memory. Results of the experiments conducted show that Karmem represents an innovation in data communication for WASM in multiple environments and demonstrates the ability to overcome challenges of efficiency and interoperability. [ABSTRACT FROM AUTHOR]
- Published
- 2024
- Full Text
- View/download PDF
8. Development of a Novel Open Control System Implementation Method under Industrial IoT.
- Author
-
Liu, Lisi, Xu, Zijie, and Qu, Xiaobin
- Subjects
FINITE state machines ,MODERN architecture ,INDUSTRIAL controls manufacturing ,AUTOMATION ,INTERNET of things - Abstract
The closed architecture of modern control systems impedes them from further development in the environment of the industrial IoT. The open control system is proposed to tackle this issue. Numerous open control prototypes have been proposed, but they do not reach high openness. According to the definition and criteria of open control systems, this paper suggests that the independence between control tasks and the independence between control tasks and infrastructures are the keys to the open control system under the industrial IoT. Through the control domain's formal description and control task virtualization to deal with the keys, this paper proposes a new method to implement open control systems under the industrial IoT. Specifically, given the hybrid characteristic of the control domain, a hierarchical semantic formal based on an extended finite state machine and a dependency network model with the time property is designed to describe the control domain. Considering the infrastructure's heterogeneity in the industrial IoT, a hybrid virtualization approach based on containers and WebAssembly is designed to virtualize control tasks. The proposed open control system implementation method is illustrated by constructing an open computer numerical control demonstration and compared to current open control prototypes. [ABSTRACT FROM AUTHOR]
- Published
- 2024
- Full Text
- View/download PDF
9. WASMixer: Binary Obfuscation for WebAssembly
- Author
-
Cao, Shangtong, He, Ningyu, Guo, Yao, Wang, Haoyu, Goos, Gerhard, Series Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Garcia-Alfaro, Joaquin, editor, Kozik, Rafał, editor, Choraś, Michał, editor, and Katsikas, Sokratis, editor
- Published
- 2024
- Full Text
- View/download PDF
10. Solving the Crossword Generation Problem Using Parallel Programming in Moderns Browsers: A Case Study
- Author
-
Rodrigues, Daniel T., Bianchini, Calebe P., Kacprzyk, Janusz, Series Editor, Gomide, Fernando, Advisory Editor, Kaynak, Okyay, Advisory Editor, Liu, Derong, Advisory Editor, Pedrycz, Witold, Advisory Editor, Polycarpou, Marios M., Advisory Editor, Rudas, Imre J., Advisory Editor, Wang, Jun, Advisory Editor, Yang, Xin-She, editor, Sherratt, Simon, editor, Dey, Nilanjan, editor, and Joshi, Amit, editor
- Published
- 2024
- Full Text
- View/download PDF
11. Accelerating WebAssembly Interpreters in Embedded Systems Through Hardware-Assisted Dispatching
- Author
-
Rupp, Matthias, Schröter, Jonathan, Wallentowitz, Stefan, Goos, Gerhard, Series Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Fey, Dietmar, editor, Stabernack, Benno, editor, Lankes, Stefan, editor, Pacher, Mathias, editor, and Pionteck, Thilo, editor
- Published
- 2024
- Full Text
- View/download PDF
12. Integrating GeoGebra with React and WebAssembly: A Web-Based Approach for Mathematical Software Development
- Author
-
Fujimoto, Mitsushi, Hartmanis, Juris, Founding Editor, van Leeuwen, Jan, Series Editor, Hutchison, David, Editorial Board Member, Kanade, Takeo, Editorial Board Member, Kittler, Josef, Editorial Board Member, Kleinberg, Jon M., Editorial Board Member, Kobsa, Alfred, Series Editor, Mattern, Friedemann, Editorial Board Member, Mitchell, John C., Editorial Board Member, Naor, Moni, Editorial Board Member, Nierstrasz, Oscar, Series Editor, Pandu Rangan, C., Editorial Board Member, Sudan, Madhu, Series Editor, Terzopoulos, Demetri, Editorial Board Member, Tygar, Doug, Editorial Board Member, Weikum, Gerhard, Series Editor, Vardi, Moshe Y, Series Editor, Goos, Gerhard, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Woeginger, Gerhard, Editorial Board Member, Buzzard, Kevin, editor, Dickenstein, Alicia, editor, Eick, Bettina, editor, Leykin, Anton, editor, and Ren, Yue, editor
- Published
- 2024
- Full Text
- View/download PDF
13. Tiny-ME Wasm: Description Logics Reasoning in Your Browser
- Author
-
Loseto, Giuseppe, Bilenchi, Ivano, Gramegna, Filippo, Loconte, Davide, Scioscia, Floriano, Ruta, Michele, Filipe, Joaquim, Editorial Board Member, Ghosh, Ashish, Editorial Board Member, Prates, Raquel Oliveira, Editorial Board Member, Zhou, Lizhu, Editorial Board Member, Casteleyn, Sven, editor, Mikkonen, Tommi, editor, García Simón, Alberto, editor, Ko, In-Young, editor, and Loseto, Giuseppe, editor
- Published
- 2024
- Full Text
- View/download PDF
14. An Empirical Analysis of Just-in-Time Compilation in Modern Databases
- Author
-
Ma, Miao, Yang, Zhengyi, Hao, Kongzhang, Chen, Liuyi, Wang, Chunling, Jin, Yi, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Bao, Zhifeng, editor, Borovica-Gajic, Renata, editor, Qiu, Ruihong, editor, Choudhury, Farhana, editor, and Yang, Zhengyi, editor
- Published
- 2024
- Full Text
- View/download PDF
15. SoK: Analysis Techniques for WebAssembly.
- Author
-
Harnes, Håkon and Morrison, Donn
- Subjects
CRYPTOCURRENCY mining ,BLOCKCHAINS ,WEB-based user interfaces ,OVERHEAD costs ,C++ - Abstract
WebAssembly is a low-level bytecode language that enables high-level languages like C, C++, and Rust to be executed in the browser at near-native performance. In recent years, WebAssembly has gained widespread adoption and is now natively supported by all modern browsers. Despite its benefits, WebAssembly has introduced significant security challenges, primarily due to vulnerabilities inherited from memory-unsafe source languages. Moreover, the use of WebAssembly extends beyond traditional web applications to smart contracts on blockchain platforms, where vulnerabilities have led to significant financial losses. WebAssembly has also been used for malicious purposes, like cryptojacking, where website visitors' hardware resources are used for crypto mining without their consent. To address these issues, several analysis techniques for WebAssembly binaries have been proposed. This paper presents a systematic review of these analysis techniques, focusing on vulnerability analysis, cryptojacking detection, and smart contract security. The analysis techniques are categorized into static, dynamic, and hybrid methods, evaluating their strengths and weaknesses based on quantitative data. Our findings reveal that static techniques are efficient but may struggle with complex binaries, while dynamic techniques offer better detection at the cost of increased overhead. Hybrid approaches, which merge the strengths of static and dynamic methods, are not extensively used in the literature and emerge as a promising direction for future research. Lastly, this paper identifies potential future research directions based on the state of the current literature. [ABSTRACT FROM AUTHOR]
- Published
- 2024
- Full Text
- View/download PDF
16. Efficient Data Exchange between WebAssembly Modules
- Author
-
Lucas Silva, José Metrôlho, and Fernando Ribeiro
- Subjects
Data-Oriented Design ,inter-process communication ,performance optimization ,serialization ,WebAssembly ,Information technology ,T58.5-58.64 - Abstract
In the past two decades, there has been a noticeable decoupling of machines and operating systems. In this context, WebAssembly has emerged as a promising alternative to traditional virtual machines. Originally designed for execution in web browsers, it has expanded to executing code in restricted and secure environments, and it stands out for its rapid startup, small footprint, and portability. However, WebAssembly presents significant challenges in data transfer and the management of interactions with the module. Its specification requires each module to have its own memory, resulting in a “share-nothing” architecture. This restriction, combined with the limitations of importing and exporting functions that only handle numerical values, and the absence of an application binary interface (ABI) for sharing more complex data structures, leads to efficiency problems; these are exacerbated by the variety of programming languages that can be compiled and executed in the same environment. To address this inefficiency, the Karmem was designed and developed. It includes a new interface description language (IDL) aimed at facilitating the definition of data, functions, and relationships between modules. Additionally, a proprietary protocol—an optimized ABI for efficient data reading and minimal decoding cost—was created. A code generator capable of producing code for various programming languages was also conceived, ensuring harmonious interaction with the ABI and the foreign function interface. Finally, the compact runtime of Karmem, built atop a WebAssembly runtime, enables communication between modules and shared memory. Results of the experiments conducted show that Karmem represents an innovation in data communication for WASM in multiple environments and demonstrates the ability to overcome challenges of efficiency and interoperability.
- Published
- 2024
- Full Text
- View/download PDF
17. Characterizing and Detecting WebAssembly Runtime Bugs.
- Author
-
Zhang, Yixuan, Cao, Shangtong, Wang, Haoyu, Chen, Zhenpeng, Luo, Xiapu, Mu, Dongliang, Ma, Yun, Huang, Gang, and Liu, Xuanzhe
- Subjects
MOBILE apps ,APPLICATION software - Abstract
WebAssembly (abbreviated WASM) has emerged as a promising language of the Web and also been used for a wide spectrum of software applications such as mobile applications and desktop applications. These applications, named WASM applications, commonly run in WASM runtimes. Bugs in WASM runtimes are frequently reported by developers and cause the crash of WASM applications. However, these bugs have not been well studied. To fill in the knowledge gap, we present a systematic study to characterize and detect bugs in WASM runtimes. We first harvest a dataset of 311 real-world bugs from hundreds of related posts on GitHub. Based on the collected high-quality bug reports, we distill 31 bug categories of WASM runtimes and summarize their common fix strategies. Furthermore, we develop a pattern-based bug detection framework to automatically detect bugs in WASM runtimes. We apply the detection framework to seven popular WASM runtimes and successfully uncover 60 bugs that have never been reported previously, among which 13 have been confirmed and 9 have been fixed by runtime developers. [ABSTRACT FROM AUTHOR]
- Published
- 2024
- Full Text
- View/download PDF
18. Adaptive retrofitting for industrial machines: utilizing webassembly and peer-to-peer connectivity on the edge.
- Author
-
Nakakaze, Otoya, Koren, István, Brillowski, Florian, and Klamma, Ralf
- Abstract
Leveraging previously untapped data sources offers significant potential for value creation in the manufacturing sector. However, asset-heavy shop floors, extended machine replacement cycles, and equipment diversity necessitate considerable investments for achieving smart manufacturing, which can be particularly challenging for small businesses. Retrofitting presents a viable solution, enabling the integration of low-cost sensors and microcontrollers with older machines to collect and transmit data. In this paper, we introduce a concept and a prototype for retrofitting industrial environments using lightweight web technologies at the edge. Our approach employs WebAssembly as a novel bytecode standard, facilitating a consistent development environment from the cloud to the edge by operating on both browsers and bare-metal hardware. By attaining near-native performance and modularity reminiscent of container-based service architectures, we demonstrate the feasibility of our approach. Our prototype was evaluated with an actual industrial robot within a showcase factory, including measurements of data exchange with a cutting-edge data lake system. We further extended the prototype to incorporate a peer-to-peer network that facilitates message routing and WebAssembly software updates. Our technology establishes a foundational framework for the transition towards Industry 4.0. By integrating considerations of sustainability and human factors, it further extends this groundwork to facilitate progression into Industry 5.0. [ABSTRACT FROM AUTHOR]
- Published
- 2024
- Full Text
- View/download PDF
19. BREWasm: A General Static Binary Rewriting Framework for WebAssembly
- Author
-
Cao, Shangtong, He, Ningyu, Guo, Yao, Wang, Haoyu, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Hermenegildo, Manuel V., editor, and Morales, José F., editor
- Published
- 2023
- Full Text
- View/download PDF
20. Enhancing Web Applications with Dynamic Code Migration Capabilities
- Author
-
Heil, Sebastian, Haas, Jan-Ingo, Gaedke, Martin, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Garrigós, Irene, editor, Murillo Rodríguez, Juan Manuel, editor, and Wimmer, Manuel, editor
- Published
- 2023
- Full Text
- View/download PDF
21. WebAssembly in IoT: Beyond Toy Examples
- Author
-
Kotilainen, Pyry, Järvinen, Viljami, Tarkkanen, Juho, Autto, Teemu, Das, Teerath, Waseem, Muhammad, Mikkonen, Tommi, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Garrigós, Irene, editor, Murillo Rodríguez, Juan Manuel, editor, and Wimmer, Manuel, editor
- Published
- 2023
- Full Text
- View/download PDF
22. DCM: Dynamic Client-Server Code Migration
- Author
-
Heil, Sebastian, Gaedke, Martin, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Garrigós, Irene, editor, Murillo Rodríguez, Juan Manuel, editor, and Wimmer, Manuel, editor
- Published
- 2023
- Full Text
- View/download PDF
23. The Finger in the Power: How to Fingerprint PCs by Monitoring Their Power Consumption
- Author
-
Botvinnik, Marina, Laor, Tomer, Rokicki, Thomas, Maurice, Clémentine, Oren, Yossi, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Gruss, Daniel, editor, Maggi, Federico, editor, Fischer, Mathias, editor, and Carminati, Michele, editor
- Published
- 2023
- Full Text
- View/download PDF
24. Mechanising and evolving the formal semantics of WebAssembly : the Web's new low-level language
- Author
-
Watt, Conrad and Sewell, Peter
- Subjects
WebAssembly ,mechanisation ,Isabelle/HOL ,virtual machine ,programming language semantics ,WasmCert - Abstract
WebAssembly is the first new programming language to be supported natively by all major Web browsers since JavaScript. It is designed to be a natural low-level compilation target for languages such as C, C++, and Rust, enabling programs written in these languages to be compiled and executed efficiently on the Web. WebAssembly's specification is managed by the W3C WebAssembly Working Group (made up of representatives from a number of major tech companies). Uniquely, the language is specified by way of a full pen-and-paper formal semantics. This thesis describes a number of ways in which I have both helped to shape the specification of WebAssembly, and built upon it. By mechanising the WebAssembly formal semantics in Isabelle/HOL while it was being drafted, I discovered a number of errors in the specification, drove the adoption of official corrections, and provided the first type soundness proof for the corrected language. This thesis also details a verified type checker and interpreter, and a security type system extension for cryptography primitives, all of which have been mechanised as extensions of my initial WebAssembly mechanisation. A major component of the thesis is my work on the specification of shared memory concurrency in Web languages: correcting and verifying properties of JavaScript's existing relaxed memory model, and defining the WebAssembly-specific extensions to the corrected model which have been adopted as the basis of WebAssembly's official threads specification. A number of deficiencies in the original JavaScript model are detailed. Some errors have been corrected, with the verified fixes officially adopted into subsequent editions of the language specification. However one discovered deficiency is fundamental to the model, an instance of the well-known "thin-air problem". My work demonstrates the value of formalisation and mechanisation in industrial programming language design, not only in discovering and correcting specification errors, but also in building confidence both in the correctness of the language's design and in the design of proposed extensions.
- Published
- 2021
- Full Text
- View/download PDF
25. Development of a Novel Open Control System Implementation Method under Industrial IoT
- Author
-
Lisi Liu, Zijie Xu, and Xiaobin Qu
- Subjects
open control system ,formal description ,virtualization ,container ,WebAssembly ,Information technology ,T58.5-58.64 - Abstract
The closed architecture of modern control systems impedes them from further development in the environment of the industrial IoT. The open control system is proposed to tackle this issue. Numerous open control prototypes have been proposed, but they do not reach high openness. According to the definition and criteria of open control systems, this paper suggests that the independence between control tasks and the independence between control tasks and infrastructures are the keys to the open control system under the industrial IoT. Through the control domain’s formal description and control task virtualization to deal with the keys, this paper proposes a new method to implement open control systems under the industrial IoT. Specifically, given the hybrid characteristic of the control domain, a hierarchical semantic formal based on an extended finite state machine and a dependency network model with the time property is designed to describe the control domain. Considering the infrastructure’s heterogeneity in the industrial IoT, a hybrid virtualization approach based on containers and WebAssembly is designed to virtualize control tasks. The proposed open control system implementation method is illustrated by constructing an open computer numerical control demonstration and compared to current open control prototypes.
- Published
- 2024
- Full Text
- View/download PDF
26. Agile Software Development Lifecycle and Containerization Technology for CubeSat Command and Data Handling Module Implementation.
- Author
-
Liubimov, Oleksandr, Turkin, Ihor, Pavlikov, Vladimir, and Volobuyeva, Lina
- Subjects
AGILE software development ,CONTAINERIZATION ,CUBESATS (Artificial satellites) ,SOFTWARE architecture ,COMPUTER software quality control ,SPACE exploration ,COMPUTER software reusability - Abstract
As a subclass of nanosatellites, CubeSats have changed the game's rules in the scientific research industry and the development of new space technologies. The main success factors are their cost effectiveness, relative ease of production, and predictable life cycle. CubeSats are very important for training future engineers: bachelor's and master's students of universities. At the same time, using CubeSats is a cost-effective method of nearest space exploration and scientific work. However, many issues are related to efficient time-limited development, software and system-level quality assurance, maintenance, and software reuse. In order to increase the flexibility and reduce the complexity of CubeSat projects, this article proposes a "hybrid" development model that combines the strengths of two approaches: the agile-a-like model for software and the waterfall model for hardware. The paper proposes a new computing platform solution, "Falco SBC/CDHM", based on Microchip (Atmel) ATSAMV71Q21 with improved performance. This type of platform emphasizes low-cost space hardware that can compete with space-grade platforms. The paper substantiates the architecture of onboard software based on microservices and containerization to break down complex software into relatively simple components that undergraduates and graduates can handle within their Master's studies, and postgraduates can use for scientific space projects. The checking of the effectiveness of the microservice architecture and the new proposed platform was carried out experimentally, involving the time spent on executing three typical algorithms of different algorithmic complexities. Algorithms were implemented using native C (Bare-metal) and WASM3 on FreeRTOS containers on two platforms, and performance was measured on both "Falco" and "Pi Pico" by Raspberry. The experiment confirmed the feasibility of the complex application of the "hybrid" development model and microservices and container-based architecture. The proposed approach makes it possible to develop complex software in teams of inexperienced students, minimize risks, provide reusability, and thus increase the attractiveness of CubeSat student projects. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
27. WebAssembly as an Enabler for Next Generation Serverless Computing.
- Author
-
Kjorveziroski, Vojdan and Filiposka, Sonja
- Abstract
WebAssembly is a new binary instruction format and runtime environment capable of executing both client side and server side workloads. With its numerous advantages, including drastically reduced cold start times, efficiency, easy portability, and compatibility with the most popular programming languages today, it has the potential to revolutionize serverless computing. We evaluate the impact of WebAssembly in terms of serverless computing, building on top of existing research related to WebAssembmly in cloud and edge environments. To this end, we introduce a novel benchmarking suite comprised of 13 different functions, compatible with WebAssembly, and focusing on both microbenchmarking and real-world workloads. We also discuss possibilities of integrating WebAssembly runtimes with the application programming interfaces and command line interfaces of popular container runtimes, representing an initial step towards potential reuse of existing orchestration engines in the future, thus solving the open issue of WebAssembly workload scheduling. We evaluate the performance of such an integration by comparing the cold start delays and total execution times of three WebAssembly runtimes: WasmEdge, Wasmer, and Wasmtime to the performance of the containerd container runtime, using distroless and distro-oriented container images. Results show that WebAssembly runtimes show better results in 10 out of 13 tests, with Wasmtime being the fastest WebAssembly runtime among those evaluated. Container runtimes still offer better compute performance for complex workloads requiring larger execution times, in cases where cold start times are negligible compared to the total execution time. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
28. Portable and Efficient Implementation of CRYSTALS-Kyber Based on WebAssembly.
- Author
-
Seog Chung Seo and HeeSeok Kim
- Subjects
QUANTUM computers ,CRYPTOGRAPHY ,PROGRAMMING languages ,ARTIFICIAL languages - Abstract
With the rapid development of quantum computers capable of realizing Shor's algorithm, existing public key-based algorithms face a significant security risk. Crystals-Kyber has been selected as the only key encapsulation mechanism (KEM) algorithm in the National Institute of Standards and Technology (NIST) Post-Quantum Cryptography (PQC) competition. In this study, we present a portable and efficient implementation of a Crystals-Kyber post-quantum KEM based on WebAssembly (Wasm), a recently released portable execution framework for high-performance web applications. Until now, most Kyber implementations have been developed with native programming languages such as C and Assembly. Although there are a few previous Kyber implementations based on JavaScript for portability, their performance is significantly lower than that of implementations based on native programming languages. Therefore, it is necessary to develop a portable and efficient Kyber implementation to secure web applications in the quantum computing era. Our Kyber software is based on JavaScript and Wasm to provide portability and efficiency while ensuring quantum security. Namely, the overall software is written in JavaScript, and the performance core parts (secure hash algorithm-3-based operations and polynomial multiplication) are written in Wasm. Furthermore, we parallelize the number theoretic transform (NTT)-based polynomial multiplication using single instruction multiple data (SIMD) functionality, which is available in Wasm. The three steps in the NTT-based polynomial multiplication have been parallelized with Wasm SIMD intrinsic functions. Our software outperforms the latest reference implementation of Kyber developed in JavaScript by ×4.02 (resp. ×4.32 and ×4.1), ×3.42 (resp. ×3.52 and ×3.44), and ×3.41 (resp. ×3.44 and ×3.38) in terms of key generation, encapsulation, and decapsulation on Google Chrome (resp. Firefox, and Microsoft Edge). As far as we know, this is the first software implementation of Kyber with Wasm technology in the web environment. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
29. An Overview of WebAssembly for IoT: Background, Tools, State-of-the-Art, Challenges, and Future Directions.
- Author
-
Ray, Partha Pratim
- Subjects
INTERNET of things ,TECHNOLOGICAL innovations ,WEB-based user interfaces ,VIRTUAL machine systems ,SCALABILITY - Abstract
This paper explores the relationship between two emerging technologies, WebAssembly (Wasm) and the Internet of Things (IoT). It examines the complementary roles of these technologies and their impact on modern web applications. First, it delves into the capabilities of Wasm as a high-performance binary format that allows developers to leverage low-level languages for computationally intensive tasks. Second, it seeks to explain why integration of IoT and Wasm is important. Third, it discusses the strengths and limitations of various tools and tool chains that are crucial for Wasm development and implementation, with a special focus on IoT. Fourth, it presents the state-of-the-art with regard to advances that combine both technologies. Fifth, it discusses key challenges and provides future directions. Lastly, it provides an in-depth elaboration of the future aspects of Wasm, with a strong focus on IoT, concluding that IoT and Wasm can provide developers with a versatile toolkit that enables them to balance productivity and performance in both web and non-web development scenarios. The collaborative use of these technologies opens up new possibilities for pushing the boundaries of web application development in terms of interactivity, security, portability, scalability, and efficient computational capabilities. As web and non-web embeddings continue to evolve, the integration of IoT and Wasm will play a crucial role in shaping the future of innovative application development. The key findings of this extensive review work suggest that existing tool sets can be easily conglomerated together to form a new era in WebAssembly–IoT infrastructure for low-power, energy-efficient, and secure edge–IoT ecosystems with near-native execution speed. Furthermore, the expansion of edge–IoT ecosystems can be augmented with prospective cloud-side deployments. However, there remains a strong need to more cohesively advance the amalgamation of Wasm and IoT technologies in the near future. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
30. WebAssembly Orchestration in the Context of Serverless Computing.
- Author
-
Kjorveziroski, Vojdan and Filiposka, Sonja
- Abstract
Recent WebAssembly advancements including better programming language support and the introduction of both the WebAssembly System Interface, and the WebAssembly Component Model, have transformed it from primarily a client-side technology to a server-side one as well. The advantages associated with WebAssembly, such as cross platform portability, small software artifacts sizes, fast start up times, and per execution isolation make it a good fit for serverless scenarios. While there are existing initiatives for using WebAssembly in such serverless contexts, orchestration is still an open question. To overcome this issue, we present a way for extending Kubernetes, allowing it to orchestrate natively executed WebAssembly modules, in addition to containers. We describe an extension to an existing WebAssembly software shim for containerd and a new Kubernetes WebAssembly operator. Benchmarking results from the proposed solution obtained using 9 serverless functions packaged both as WebAssembly modules and OpenFaaS functions running in containers, show that WebAssembly has clear advantages for frequently executed serverless functions which require elasticity. WebAssembly functions enjoy two times faster deployment times and at least an order of magnitude smaller artifact sizes while still offering comparable execution performance. However, when it comes to sustained performance for long running serverless functions with processor intensive workloads, containers are the preferred choice, compensating for the increased cold start times with faster execution times. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
31. WebMRI: Brain extraction and linear registration in the web browser.
- Author
-
Harmouche, Ahmed, Kövér, Ferenc, Szukits, Sándor, Dóczi, Tamás, Bogner, Péter, and Tóth, Arnold
- Subjects
- *
WEB browsers , *WORLD Wide Web , *CASCADING style sheets , *IMAGE registration , *WEB-based user interfaces , *IMAGE processing , *USER interfaces - Abstract
Since the initial release of the World Wide Web, the capabilities of web browsers have grown from presenting formatted documents to running complex programs, such as 3D game engines. The medical imaging community started to adopt technologies that came with the fifth major version of the HyperText Markup Language (HTML5). It led to the creation of various web-based radiological applications such as cornerstone.js or BrainBrowser. BrainBrowser supports both 3D and 2D rendering of neuroimaging data. However, it cannot run important image processing algorithms, such as brain extraction and linear registration, which are essential in most neuroimaging workflows. The most commonly used library that supports these algorithms is the FMRIB Software Library (FSL). We aim to build a web-based cross-platform neuroimaging platform that combines data visualization with image processing. We built our system as an extension of BrainBrowser. We developed WebMRI in JavaScript and designed the user interface using HTML, CSS, and Bootstrap. We used Emscripten to port the brain extraction and linear registration tools of FSL to the web. We built WebMRI, a fully web-based extensible neuroimaging platform that combines the visualization capabilities of BrainBrowser with the brain extraction and linear registration tools of FSL by porting them from C++ to WebAssembly. We extended BrainBrowser with a plugin system that makes it easy to bring other processing algorithms into the platform. We released the WebMRI source code on Github: https://github.com/wpmed92/WebMRI. We developed and released WebMRI, a web-based cross-platform open-source neuroimaging platform. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
32. Review of WebAssembly Application Research for Edge Serverless Computing.
- Author
-
WANG Xin, ZHAO Kai, and QIN Bin
- Subjects
REINFORCEMENT learning ,EDGE computing ,DEEP learning ,ARTIFICIAL intelligence ,COMPUTING platforms - Abstract
WebAssembly (Wasm) is a new binary format that is portable, small, fast to load and compatible with the Web. It has the characteristics of high efficiency, security, and openness. The basic concept of edge computing is to run computing tasks on computing resources close to the data source. However, the performance and resources of devices deployed on the edge are usually very limited. In this resource-constrained environment, how to provide low-latency and secure services is an important research direction of edge computing. Serverless is a new way to host applications on infrastructure. At present, it is mainly based on container technology to realize program hosting. Serverless computing is currently the most suitable architecture for edge computing due to its lightweight, function as a service (FaaS), automatic scaling and so on, but it always has problems such as cold start and large memory consumption. Wasm can replace the traditional container and provide an updated, faster, less resource consuming and secure isolation implementation for edge serverless computing. In this paper, the characteristics of edge serverless computing and its application scenarios, as well as the development trend of Wasm are introduced at first. The current research on Wasm-based edge serverless computing is analyzed and the development direction of Wasm runtime alternative containers as the carrier of edge serverless computing is illustrated. Moreover, the problems of edge Wasm serverless computing platform are discussed and the future optimization directions based on deep reinforcement learning and other artificial intelligence algorithms are summarized. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
33. WaLi: Control-Flow-Based Analysis of Wasm Smart Contracts
- Author
-
Yang, Shuo, Li, Huizhong, Zheng, Zibin, Filipe, Joaquim, Editorial Board Member, Ghosh, Ashish, Editorial Board Member, Prates, Raquel Oliveira, Editorial Board Member, Zhou, Lizhu, Editorial Board Member, Svetinovic, Davor, editor, Zhang, Yin, editor, Luo, Xiapu, editor, Huang, Xiaoyan, editor, and Chen, Xingping, editor
- Published
- 2022
- Full Text
- View/download PDF
34. Proposing Isomorphic Microservices Based Architecture for Heterogeneous IoT Environments
- Author
-
Kotilainen, Pyry, Autto, Teemu, Järvinen, Viljami, Das, Teerath, Tarkkanen, Juho, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Taibi, Davide, editor, Kuhrmann, Marco, editor, Mikkonen, Tommi, editor, Klünder, Jil, editor, and Abrahamsson, Pekka, editor
- Published
- 2022
- Full Text
- View/download PDF
35. Retrofitting Industrial Machines with WebAssembly on the Edge
- Author
-
Nakakaze, Otoya, Koren, István, Brillowski, Florian, Klamma, Ralf, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Chbeir, Richard, editor, Huang, Helen, editor, Silvestri, Fabrizio, editor, Manolopoulos, Yannis, editor, and Zhang, Yanchun, editor
- Published
- 2022
- Full Text
- View/download PDF
36. A Hybrid Synchronization Mechanism for Parallel Sparse Triangular Solve
- Author
-
Sandhu, Prabhjot, Verbrugge, Clark, Hendren, Laurie, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Woeginger, Gerhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Li, Xiaoming, editor, and Chandrasekaran, Sunita, editor
- Published
- 2022
- Full Text
- View/download PDF
37. Formal Verification Platform as a Service: WebAssembly Vulnerability Detection Application.
- Author
-
LiangJun Deng, Hang Lei, Zheng Yang, WeiZhong Qian, XiaoYu Li, Hao Wu, Sihao Deng, RuChao Sha, and WeiDong Deng
- Subjects
WEB services ,APPLICATION program interfaces ,BLOCKCHAINS ,SOFTWARE verification ,FORMAL languages - Abstract
In order to realize a general-purpose automatic formal verification platform based on WebAssembly technology as a web service (FVPS), which aims to provide an automated report of vulnerability detections, this work builds a Hyperledger Fabric blockchain runtime model. It proposes an optimized methodology of the functional equivalent translation from source program languages to formal languages. This methodology utilizes an external application programming interface (API) table to replace the source codes in compilation, thereby pruning the part of housekeeping codes to ease code inflation. Code inflation is a significant metric in formal language translation. Namely, minor code inflation enhances verification scale and performance efficiency. It determines the efficiency of formal verification, involving launching, running, and memory usage. For instance, path explosion increases exponentially, resulting in out-of-memory. The experimental results conclude that program languages like golang severely impact code inflation. FVPS reduces the wasm code size by over 90%, achieving two orders of optimization magnitude, from 2000 kilobyte (KB) to 90 KB. That means we can cope with golang applications up to 20 times larger than the original in scale. This work eliminates the gap between Hyperledger Fabric smart contracts and WebAssembly. Our approach is pragmatic, adaptable, extendable, and flexible. Nowadays, FVPS is successfully applied in a Railway-Port-Aviation blockchain transportation system. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
38. FPocketWeb: protein pocket hunting in a web browser
- Author
-
Yuri Kochnev and Jacob D. Durrant
- Subjects
Computer-aided drug discovery ,Ligand-binding pocket ,Fpocket ,Browser app ,Online resource ,WebAssembly ,Information technology ,T58.5-58.64 ,Chemistry ,QD1-999 - Abstract
Abstract Detecting macromolecular (e.g., protein) cavities where small molecules bind is an early step in computer-aided drug discovery. Multiple pocket-detection algorithms have been developed over the past several decades. Among them, fpocket, created by Schmidtke and Le Guilloux, is particularly popular. Like many programs used in computational-biology research, fpocket requires users to download and install an executable file. That file must also be run via a command-line interface, further complicating use. An existing fpocket server application effectively addresses these challenges, but it requires users to upload their possibly proprietary structures to a third-party server. The FPocketWeb web app builds on this prior work. It runs the fpocket3 executable entirely in a web browser without requiring installation. The pocket-finding calculations occur on the user’s computer rather than on a remote server. A working version of the open-source FPocketWeb app can be accessed free of charge from http://durrantlab.com/fpocketweb .
- Published
- 2022
- Full Text
- View/download PDF
39. SoK: Analysis Techniques for WebAssembly
- Author
-
Håkon Harnes and Donn Morrison
- Subjects
WebAssembly ,vulnerability analysis ,browser security ,cryptojacking ,smart contracts ,Information technology ,T58.5-58.64 - Abstract
WebAssembly is a low-level bytecode language that enables high-level languages like C, C++, and Rust to be executed in the browser at near-native performance. In recent years, WebAssembly has gained widespread adoption and is now natively supported by all modern browsers. Despite its benefits, WebAssembly has introduced significant security challenges, primarily due to vulnerabilities inherited from memory-unsafe source languages. Moreover, the use of WebAssembly extends beyond traditional web applications to smart contracts on blockchain platforms, where vulnerabilities have led to significant financial losses. WebAssembly has also been used for malicious purposes, like cryptojacking, where website visitors’ hardware resources are used for crypto mining without their consent. To address these issues, several analysis techniques for WebAssembly binaries have been proposed. This paper presents a systematic review of these analysis techniques, focusing on vulnerability analysis, cryptojacking detection, and smart contract security. The analysis techniques are categorized into static, dynamic, and hybrid methods, evaluating their strengths and weaknesses based on quantitative data. Our findings reveal that static techniques are efficient but may struggle with complex binaries, while dynamic techniques offer better detection at the cost of increased overhead. Hybrid approaches, which merge the strengths of static and dynamic methods, are not extensively used in the literature and emerge as a promising direction for future research. Lastly, this paper identifies potential future research directions based on the state of the current literature.
- Published
- 2024
- Full Text
- View/download PDF
40. Client-Side Application of Deep Learning Models Through Teleradiology.
- Author
-
JODOGNE, Sébastien
- Abstract
Deep learning models for radiology are typically deployed either through cloud-based platforms, through on-premises infrastructures, or though heavyweight viewers. This tends to restrict the audience of deep learning models to radiologists working in state-of-the-art hospitals, which raises concerns about the democratization of deep learning for medical imaging, most notably in the context of research and education. We show that complex deep learning models can be applied directly inside Web browsers, without resorting to any external computation infrastructure, and we release our code as free and open-source software. This opens the path to the use of teleradiology solutions as an effective way to distribute, teach, and evaluate deep learning architectures. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
41. WasmAndroid: A Cross-Platform Runtime for Native Programming Languages on Android.
- Author
-
WEN, ELLIOTT, WEBER, GERALD, and NANAYAKKARA, SURANGA
- Subjects
PROGRAMMING languages ,NATIVE language ,SOURCE code ,SYSTEMS software ,MOBILE operating systems ,COMPILERS (Computer programs) - Abstract
Open source hardware such as RISC-V has been gaining substantial momentum. Recently, they have begun to embrace Google’s Android operating system to leverage its software ecosystem. Despite the encouraging progress, a challenging issue arises: a majority of Android applications are written in native languages and need to be recompiled to target new hardware platforms. Unfortunately, this recompilation process is not scalable because of the explosion of new hardware platforms. To address this issue, we present WasmAndroid, a high-performance cross-platform runtime for native Android applications. With WasmAndroid, developers can compile their source code to WebAssembly, an efficient and portable bytecode format that can be executed everywhere without additional reconfiguration. Developers can also transpile existing application binaries to WebAssembly when source code is not available. WebAssembly’s language model is very different from other common languages. This mismatch leads to many unique implementation challenges. In this article, we provide workable solutions and conduct a thorough system evaluation. We show that WasmAndroid provides acceptable performance to execute native applications in a cross-platform manner. [ABSTRACT FROM AUTHOR]
- Published
- 2023
- Full Text
- View/download PDF
42. Face Recognition Efficiency Enhancements Using Tensorflow and WebAssembly: A Practical Approach
- Author
-
Martín Manso, Ricardo, Escrivá Gallardo, Pablo, Filipe, Joaquim, Editorial Board Member, Ghosh, Ashish, Editorial Board Member, Prates, Raquel Oliveira, Editorial Board Member, Zhou, Lizhu, Editorial Board Member, Ruiz, Pablo H., editor, Agredo-Delgado, Vanessa, editor, and Kawamoto, André Luiz Satoshi, editor
- Published
- 2021
- Full Text
- View/download PDF
43. Computation at the Edge with WebAssembly
- Author
-
Alamari, Jebreel, Chow, C. Edward, Kacprzyk, Janusz, Series Editor, Pal, Nikhil R., Advisory Editor, Bello Perez, Rafael, Advisory Editor, Corchado, Emilio S., Advisory Editor, Hagras, Hani, Advisory Editor, Kóczy, László T., Advisory Editor, Kreinovich, Vladik, Advisory Editor, Lin, Chin-Teng, Advisory Editor, Lu, Jie, Advisory Editor, Melin, Patricia, Advisory Editor, Nedjah, Nadia, Advisory Editor, Nguyen, Ngoc Thanh, Advisory Editor, Wang, Jun, Advisory Editor, and Latifi, Shahram, editor
- Published
- 2021
- Full Text
- View/download PDF
44. A Standalone WebAssembly Development Environment for the Internet of Things
- Author
-
Koren, István, Goos, Gerhard, Founding Editor, Hartmanis, Juris, Founding Editor, Bertino, Elisa, Editorial Board Member, Gao, Wen, Editorial Board Member, Steffen, Bernhard, Editorial Board Member, Woeginger, Gerhard, Editorial Board Member, Yung, Moti, Editorial Board Member, Brambilla, Marco, editor, Chbeir, Richard, editor, Frasincar, Flavius, editor, and Manolescu, Ioana, editor
- Published
- 2021
- Full Text
- View/download PDF
45. Enhancing embedded systems development with TS-
- Author
-
Yu, Xingzi, Tang, Wei, Xiong, Tianlei, Chen, Wengang, He, Jie, Yang, Bin, and Qi, Zhengwei
- Published
- 2024
- Full Text
- View/download PDF
46. Complementing JavaScript in High-Performance Node.js and Web Applications with Rust and WebAssembly.
- Author
-
Kyriakou, Kyriakos-Ioannis D. and Tselikas, Nikolaos D.
- Subjects
JAVASCRIPT programming language ,WEB-based user interfaces ,PROGRAMMING languages ,WEB browsers ,C++ - Abstract
We examine whether the novel systems programming language named Rust can be utilized alongside JavaScript in Node.js and Web-based applications development. The paper describes how JavaScript can be used as a high-level scripting language in combination with Rust in place of C++ in order to realize efficiency and be free of race conditions as well as memory-related software issues. Furthermore, we conducted stress tests in order to evaluate the performance of the proposed architecture in various scenarios. Rust-based implementations were able to outperform JS by 1.15 by over 115 times across the range of measurements and overpower Node.js's concurrency model by 14.5 times or more without the need for fine-tuning. In Web browsers, the single-thread WebAssembly implementation outperformed the respective pure JS implementation by about two to four times. WebAssembly executed inside of Chromium compared to the equivalent Node.js implementations was able to deliver 93.5% the performance of the single-threaded implementation and 67.86% the performance of the multi-threaded implementation, which translates to 1.87 to over 24 times greater performance than the equivalent manually optimized pure JS implementation. Our findings provide substantial evidence that Rust is capable of providing the low-level features needed for non-blocking operations and hardware access while maintaining high-level similarities to JavaScript, aiding productivity. [ABSTRACT FROM AUTHOR]
- Published
- 2022
- Full Text
- View/download PDF
47. WebAssembly-based Delta Sync for Cloud Storage Services.
- Author
-
JIANWEI ZHENG, ZHENHUA LI, YUANHUI QIU, HAO LIN, HE XIAO, YANG LI, and YUNHAO LIU
- Subjects
WEB-based user interfaces ,CLOUD storage ,MOBILE apps ,MOBILE operating systems ,WEB browsers ,TRIANGLES ,SYNCHRONIZATION ,CLOUD computing - Abstract
Delta synchronization (sync) is crucial to the network-level efficiency of cloud storage services, especially when handling large files with small increments. Practical delta sync techniques are, however, only available for PC clients and mobile apps, but not web browsers-the most pervasive and OS-independent access method. To bridge this gap, prior work concentrates on either reversing the delta sync protocol or utilizing the native client, all striving around the tradeoffs among efficiency, applicability, and usability and thus forming an "impossible triangle." Recently, we note the advent of WebAssembly (WASM), a portable binary instruction format that is efficient in both encoding size and load time. In principle, the unique advantages of WASM can make web-based applications enjoy near-native runtime speed without significant cloud-side or clientside changes. Thus, we implement a straightforward WASM-based delta sync solution, WASMrsync, finding its quasi-asynchronous working manner and conventional In-situ Separate Memory Allocation greatly increase sync time and memory usage. To address them, we strategically devise sync-async code decoupling and streaming compilation, together with Informed In-place File Construction. The resulting solution, WASMrsync+, achieves comparable sync time as the state-of-the-art (most efficient) solution with nearly only half of memory usage, letting the "impossible triangle" reach a reconciliation. [ABSTRACT FROM AUTHOR]
- Published
- 2022
- Full Text
- View/download PDF
48. Aspect-Oriented Webassembly Transformation.
- Author
-
Rodrigues, João and Barreiros, Jorge
- Subjects
ASPECT-oriented programming ,JAVASCRIPT programming language ,WEB-based user interfaces ,SOURCE code ,COMPUTER software - Abstract
There are scenarios where it can be useful or necessary to directly transform and instrument compiled code, rather than resorting to source code changes with subsequent compilation. These transformations can be motivated by several reasons, such as: immediate repair of problems encountered in production, neutralization of potentially malicious code, performance improvements, instrumentation for profiling and inspection purposes, fault injection, or unavailability of source code. While tools are available for conducting this kind of transformations for many different software ecosystems and languages, there is a limited set of options for doing so for WebAssembly applications. In this paper, we present a novel tool and language, the WasmManipulator/WmrLang, for manipulating WebAssembly code, which allows you to perform code transformations, using an aspect-oriented approach for specifying code locations, and code insertion, replacement, or deletion to be executed at those locations. In addition, because WebAssembly routines can be heavily interdependent on the JavaScript code that uses them, the tool has certain features that allow you to take advantage of and exploit this dependency. This includes defining additional types in WASM code, and interpreting/executing expressions at runtime. [ABSTRACT FROM AUTHOR]
- Published
- 2022
49. Development of academic information system using webassembly technology
- Author
-
Poetri Lestari Lokapitasari Belluano, Purnawansyah Purnawansyah, La Saiman, and Benny Leonard Enrico Panggabean
- Subjects
siakad ,xsia ,webassembly ,ux ,dx ,Electronic computers. Computer science ,QA75.5-76.95 - Abstract
The Academic Information System (in Indonesian often abbreviated as SIAKAD) is a system developed to manage student data that aims at facilitating online academic administration activities. It aims to provide academic information services in the form of web applications, where teachers can independently create student academic reports to synchronize data into the DAPODIK system, a primary education data system, and develop academic information systems using web assembly according to user experience (UX) and developer experience (DX). The research method consists of field studies and literature related to web assembly, primary education data (DAPODIK), and the Academic Information System (SIAKAD). This information system and database were built using the Convention Over Configuration paradigm. The design phase used a prototyping model to graphically represent the system workflow and used an experimental research approach. Moreover, the study used an integrated modeling language (UML), and a Database Management System using PostgreSQL, and alpha testing for model testing. The Client Application was built using the C# programming language for users to generate student academic reports every semester. Processing data transactions using web assembly took less time than the traditional web, which was less than 300 milliseconds.
- Published
- 2021
- Full Text
- View/download PDF
50. An Overview of WebAssembly for IoT: Background, Tools, State-of-the-Art, Challenges, and Future Directions
- Author
-
Partha Pratim Ray
- Subjects
WebAssembly ,IoT ,stack ,virtual machine ,binary format ,Information technology ,T58.5-58.64 - Abstract
This paper explores the relationship between two emerging technologies, WebAssembly (Wasm) and the Internet of Things (IoT). It examines the complementary roles of these technologies and their impact on modern web applications. First, it delves into the capabilities of Wasm as a high-performance binary format that allows developers to leverage low-level languages for computationally intensive tasks. Second, it seeks to explain why integration of IoT and Wasm is important. Third, it discusses the strengths and limitations of various tools and tool chains that are crucial for Wasm development and implementation, with a special focus on IoT. Fourth, it presents the state-of-the-art with regard to advances that combine both technologies. Fifth, it discusses key challenges and provides future directions. Lastly, it provides an in-depth elaboration of the future aspects of Wasm, with a strong focus on IoT, concluding that IoT and Wasm can provide developers with a versatile toolkit that enables them to balance productivity and performance in both web and non-web development scenarios. The collaborative use of these technologies opens up new possibilities for pushing the boundaries of web application development in terms of interactivity, security, portability, scalability, and efficient computational capabilities. As web and non-web embeddings continue to evolve, the integration of IoT and Wasm will play a crucial role in shaping the future of innovative application development. The key findings of this extensive review work suggest that existing tool sets can be easily conglomerated together to form a new era in WebAssembly–IoT infrastructure for low-power, energy-efficient, and secure edge–IoT ecosystems with near-native execution speed. Furthermore, the expansion of edge–IoT ecosystems can be augmented with prospective cloud-side deployments. However, there remains a strong need to more cohesively advance the amalgamation of Wasm and IoT technologies in the near future.
- Published
- 2023
- Full Text
- View/download PDF
Catalog
Discovery Service for Jio Institute Digital Library
For full access to our library's resources, please sign in.