Il W3C ha reso WebAssembly uno standard consigliato

Il mese scorso abbiamo condiviso qui sul blog about la notizia che Mozilla, Fastly, Intel e Red Hat avevano collaborato per sviluppare le tecnologie che fanno WebAssembly (Se vuoi saperne di più sulla notizia, puoi consultarla in questo link) e ora poche settimane dopo quella notizia Il W3C Consortium ha annunciato che la tecnologia WebAssembly è diventato lo standard consigliato.

Per chi non ha familiarità con WebAssembly dovrebbero saperlo questo fornisce un middleware universale basso livello indipendente dal browser per eseguire applicazioni compilato da vari linguaggi di programmazione. WebAssembly si posiziona come la tecnologia cross-browser più promettente e portatile per la creazione di applicazioni web ad alte prestazioni.

WebAssemblye può essere utilizzato per risolvere attività che richiedono prestazioni elevate, ad esempio, codifica video, elaborazione del suono, grafica 3D e manipolazione, sviluppo di giochi, operazioni crittografiche, calcoli matematici e creazione di implementazioni portatili di linguaggi di programmazione.

WebAssembly assomiglia molto ad Asm.js, ma differisce in quanto è un formato binario non vincolato a JavaScript. WebAssembly non richiede l'uso di un garbage collector, poiché viene utilizzata la gestione esplicita della memoria.

Una caratteristica distintiva del modello di esecuzione delle applicazioni che utilizzano WASSto lanciando in un ambiente sandbox isolare dal sistema principale e utilizzare un meccanismo di sicurezza basato sulla gestione della capacità, per azioni con ciascuna delle risorse (file, directory, socket, chiamate di sistema, ecc.)

Abilitando JIT per WebAssembly, è possibile ottenere livelli di prestazioni vicini al codice nativo. Tra i compiti principali di WebAssembly c'è la fornitura di portabilità, prevedibilità del comportamento e identità dell'esecuzione del codice su diverse piattaforme.

Assemblaggio Web 1

Recentemente, Anche WebAssembly sta avanzando come piattaforma universale per eseguire codice in modo sicuro su qualsiasi infrastruttura, sistema operativo e dispositivo, non limitato ai browser.

Il W3C ha standardizzato tre specifiche relativo a WebAssembly:

  1. Nucleo di assemblaggio web- Definita come macchina virtuale di basso livello che imita da vicino la funzionalità di molti microprocessori su cui viene eseguita. O tramite la compilazione o l'interpretazione just-in-time, il motore WebAssembly può essere eseguito quasi alla velocità del codice compilato per una piattaforma nativa.
    Una risorsa .wasm è analogo a un file .classe di Java nel senso che contiene dati statici e segmenti di codice che operano su quei dati statici. A differenza di Java, WebAssembly viene generalmente prodotto come destinazione di compilazione per altri linguaggi di programmazione come C / C ++ e Rust.
  2. API Web WebAssembly: definisce un'interfaccia di programmazione basata sul meccanismo Promise per la richiesta e l'esecuzione delle risorse ".wasm". Il formato della risorsa WebAssembly è ottimizzato per avviare l'esecuzione senza attendere il caricamento completo del file, migliorando la reattività delle applicazioni web.
  3. Interfaccia JavaScript di WebAssembly: fornisce un'API per l'integrazione con JavaScript. Consente di ottenere valori e passare parametri alle funzioni WebAssembly. L'esecuzione di WebAssembly corrisponde al modello di sicurezza JavaScript e tutte le interazioni con l'host vengono eseguite in modo simile all'esecuzione del codice JavaScript.

In futuro, si prevede di prepararsi specifiche per le funzioni di WebAssembly come:

  • Multithreading con memoria condivisa e accesso alla memoria atomica.
  • Operazioni vettoriali basate su SIMD, che consentono di parallelizzare l'esecuzione dei cicli.
  • Tipi di riferimento per riferimenti diretti a oggetti nel codice WebAssembly.
  • Possibilità di chiamare funzioni senza spendere spazio aggiuntivo nello stack.
  • Integrazione con i moduli ECMAScript: la capacità di caricare codice WebAssembly da JavaScript come moduli conformi alla specifica ECMAScript 6.
  • Il modo di lavorare con il garbage collector.
  • Debug delle interfacce.
  • WASI (WebAssembly System Interface): API per l'interazione diretta con il sistema operativo (API POSIX per lavorare con file, socket, ecc.).

Se vuoi saperne di più, puoi consultare la nota originale nel seguente link


Lascia un tuo commento

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati con *

*

*

  1. Responsabile del trattamento: AB Internet Networks 2008 SL
  2. Scopo dei dati: controllo SPAM, gestione commenti.
  3. Legittimazione: il tuo consenso
  4. Comunicazione dei dati: I dati non saranno oggetto di comunicazione a terzi se non per obbligo di legge.
  5. Archiviazione dati: database ospitato da Occentus Networks (UE)
  6. Diritti: in qualsiasi momento puoi limitare, recuperare ed eliminare le tue informazioni.