W3C heeft van WebAssembly een aanbevolen standaard gemaakt

Vorige maand hebben we gedeeld hier op de blog over het nieuws dat Mozilla, Fastly, Intel en Red Hat hadden samengewerkt om te ontwikkelen de technologieën die maken WebAssembly (Als u meer wilt weten over het nieuws, kunt u het raadplegen deze link) en nu enkele weken na dat nieuws Het W3C Consortium heeft aangekondigd dat de technologie WebAssembly het is de aanbevolen norm geworden.

Voor degenen die niet bekend zijn met WebAssembly ze zouden dat moeten weten dit levert een middleware op universeel browseronafhankelijke low-level om applicaties uit te voeren gecompileerd vanuit verschillende programmeertalen. WebAssembly wordt gepositioneerd als de meest veelbelovende en draagbare cross-browsertechnologie voor het bouwen van krachtige webapplicaties.

Web Assemblage se kan worden gebruikt om taken op te lossen die hoge prestaties vereisenbijvoorbeeld videocodering, geluidsverwerking, 3D-graphics en -manipulatie, spelontwikkeling, cryptografische bewerkingen, wiskundige berekeningen en het creëren van draagbare implementaties van programmeertalen.

WebAssembly lijkt veel op Asm.js, maar verschilt daarin dat het een binair formaat is dat niet aan JavaScript is gebonden. WebAssembly vereist geen garbage collector, aangezien expliciet geheugenbeheer wordt gebruikt.

Een onderscheidend kenmerk van het uitvoeringsmodel van applicaties die WAS gebruikenIk lanceer in een sandbox-omgeving om te isoleren van het hoofdsysteem en het gebruik van een beveiligingsmechanisme op basis van capaciteitsbeheer, voor acties met elk van de bronnen (bestanden, mappen, sockets, systeemoproepen, enz.)

Door JIT voor WebAssembly in te schakelen, kunt u prestatieniveaus bereiken die in de buurt komen van native code​ Een van de belangrijkste taken van WebAssembly is het bieden van portabiliteit, voorspelbaarheid van gedrag en identiteit van code-uitvoering op verschillende platforms.

Webmontage 1

onlangs, WebAssembly ontwikkelt zich ook als een universeel platform om code veilig uit te voeren op elke infrastructuur, besturingssysteem en apparaat, niet beperkt tot browsers.

W3C heeft drie specificaties gestandaardiseerd gerelateerd aan WebAssembly:

  1. Web Assemblage Kern- Gedefinieerd als een virtuele machine op laag niveau die de functionaliteit van veel microprocessors waarop deze draait, nauw nabootst. Door middel van compilatie of Just-In-Time-interpretatie kan de WebAssembly-engine bijna de snelheid hebben van gecompileerde code voor een native platform.
    Een grondstof .wasm is analoog aan een bestand .klas van Java in de zin dat het statische gegevens en codesegmenten bevat die op die statische gegevens werken. In tegenstelling tot Java wordt WebAssembly over het algemeen geproduceerd als een compilatiedoel voor andere programmeertalen zoals C / C ++ en Rust.
  2. WebAssembly-web-API: definieert een programmeerinterface gebaseerd op het Promise-mechanisme voor het aanvragen en uitvoeren van ".wasm" -bronnen. Het WebAssembly-bronformaat is geoptimaliseerd om de uitvoering te starten zonder te wachten tot het bestand volledig is geladen, waardoor het reactievermogen van webtoepassingen wordt verbeterd.
  3. WebAssembly JavaScript-interface: biedt een API om te integreren met JavaScript. Hiermee kunt u waarden ophalen en parameters doorgeven aan WebAssembly-functies. De uitvoering van WebAssembly komt overeen met het JavaScript-beveiligingsmodel en alle interactie met de host wordt op dezelfde manier uitgevoerd als de uitvoering van JavaScript-code.

In de toekomst is het de bedoeling om voor te bereiden specificaties voor WebAssembly-functies zoals:

  • Multithreading met gedeeld geheugen en atomaire geheugentoegang.
  • Vectorbewerkingen op basis van SIMD, waarmee de uitvoering van cycli parallel kan worden geschakeld.
  • Referentietypen voor directe verwijzingen naar objecten in WebAssembly-code.
  • Mogelijkheid om functies aan te roepen zonder extra ruimte op de stapel te besteden.
  • Integratie met ECMAScript-modules: de mogelijkheid om WebAssembly-code uit JavaScript te laden als modules die voldoen aan de ECMAScript 6-specificatie.
  • De manier van werken met de vuilnisman.
  • Foutopsporingsinterfaces.
  • WASI (WebAssembly System Interface): API voor directe interactie met het besturingssysteem (POSIX API om te werken met bestanden, sockets, etc.).

Als u er meer over wilt weten, kunt u de originele notitie raadplegen In de volgende link.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: AB Internet Networks 2008 SL
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.