λHive: Formal Semantics of an Edge Computing Model based on JavaScript
Edge computing is a paradigm that applies virtualization technology that makes it easier to deploy and run a wider range of applications on the edge servers and take advantage of largely unused computational resources. This article describes the design and formalization of Hive, a distributed shared...
| Autores: | , |
|---|---|
| Tipo de recurso: | artículo |
| Estado: | Versión publicada |
| Fecha de publicación: | 2022 |
| País: | Argentina |
| Institución: | Comisión de Investigaciones Científicas de la Provincia de Buenos Aires |
| Repositorio: | CIC Digital (CICBA) |
| Idioma: | inglés |
| OAI Identifier: | oai:digital.cic.gba.gob.ar:11746/11698 |
| Acceso en línea: | https://digital.cic.gba.gob.ar/handle/11746/11698 |
| Access Level: | acceso abierto |
| Palabra clave: | Ciencias de la Computación e Información Distributed Shared Memory Edge Computing Cloud Computing JavaScript Synchronization mechanism Formal Semantics |
| Sumario: | Edge computing is a paradigm that applies virtualization technology that makes it easier to deploy and run a wider range of applications on the edge servers and take advantage of largely unused computational resources. This article describes the design and formalization of Hive, a distributed shared memory model that can be transparently integrated with JavaScript using a standard out of the box runtime. To define such model a formal definition of the JavaScript language was used and extended to include modern capabilities and custom semantics. This extended model was used to prove that the distributed shared memory can operate on top of existing and unmodified web browsers. The proposed model guarantees the eventual synchronization of data across all the system and provides the possibility to have a stricter consistency using standard http operations. The technical feasibility of this proposal was empirically validated by a prototype that yields reasonably low propagation time and allows the distribution of preexisting JavaScript code without any major modifications. Additionally, the comprehensive formalization of the Hive execution model allows developers to guarantee certain properties of the synchronization mechanism, such as efficient and no blocking. |
|---|