W3C je WebAssembly postavio preporučeni standard

Prošli mjesec smo dijelili ovdje na blogu o vijest da su se Mozilla, Fastly, Intel i Red Hat udružili kako bi razvili tehnologije koje čine WebAssembly (Ako želite znati više o vijestima, možete ih pregledati ovaj link) i sada nekoliko sedmica nakon te vijesti Konzorcij W3C najavio je da je ta tehnologija WebAssembly postao je preporučeni standard.

Za one koji nisu upoznati sa WebAssemblyom oni bi to trebali znati ovo pruža međuopreme Univerzalni nizak nivo nezavisan od pretraživača za pokretanje aplikacija kompajlirano iz različitih programskih jezika. WebAssembly je pozicioniran kao najperspektivnija i prenosiva tehnologija više pretraživača za izgradnju web aplikacija visokih performansi.

Web Assembly sMože se koristiti za rješavanje zadataka koji zahtijevaju visoke performanse, na primjer, video kodiranje, obrada zvuka, 3D grafika i manipulacija, razvoj igara, kriptografske operacije, matematički proračuni i stvaranje prijenosnih implementacija programskih jezika.

WebAssembly liči na Asm.js, ali se razlikuje po tome što je binarni format koji nije vezan za JavaScript. WebAssembly ne zahtijeva upotrebu sakupljača smeća, jer se koristi eksplicitno upravljanje memorijom.

Karakteristična karakteristika modela izvršenja aplikacija koje koriste WASLansiram u okruženju pješčanika da se izoliraju od glavnog sistema i koriste sigurnosni mehanizam zasnovan na upravljanju kapacitetom, za radnje sa svakim od resursa (datoteke, direktoriji, utičnice, sistemski pozivi itd.)

Omogućavanjem JIT-a za WebAssembly možete postići nivoe performansi bliske izvornom kodu. Među glavnim zadacima WebAssemblya je osiguranje prenosivosti, predvidljivosti ponašanja i identiteta izvršavanja koda na različitim platformama.

Web sklop 1

Nedavno WebAssembly takođe napreduje kao univerzalna platforma za sigurno pokretanje koda na bilo kojoj infrastrukturi, operativnom sistemu i uređaju, ne ograničavajući se na preglednike.

W3C je standardizirao tri specifikacije vezano za WebAssembly:

  1. Web Assembly Core- Definirano kao virtualna mašina na niskom nivou koja usko oponaša funkcionalnost mnogih mikroprocesora na kojima radi. Bilo kompilacijom ili interpretacijom Just-in-Time, mehanizam WebAssembly može raditi gotovo brzinom kompajliranog koda za matičnu platformu.
    Resurs .wasm je analogno datoteci .razred Java u smislu da sadrži statičke podatke i segmente koda koji rade na tim statičkim podacima. Za razliku od Jave, WebAssembly se uglavnom proizvodi kao cilj kompilacije za druge programske jezike kao što su C / C ++ i Rust.
  2. Web API za WebAssembly: definira programsko sučelje zasnovano na mehanizmu Promise za traženje i izvršavanje ".wasm" resursa. Format resursa WebAssembly optimiziran je za započinjanje izvođenja bez čekanja da se datoteka u potpunosti učita, poboljšavajući odziv web aplikacija.
  3. JavaScript sučelje WebAssembly: pruža API za integraciju s JavaScriptom. Omogućuje vam dobivanje vrijednosti i prosljeđivanje parametara funkcijama WebAssembly. Izvršenje WebAssembly odgovara JavaScript sigurnosnom modelu, a sve interakcije s hostom provode se na sličan način kao izvršavanje JavaScript koda.

U budućnosti se planira priprema specifikacije za funkcije WebAssembly-a kao što su:

  • Multitreading sa zajedničkom memorijom i pristupom atomskoj memoriji.
  • Vektorske operacije zasnovane na SIMD-u, koje omogućavaju paralelno izvršavanje ciklusa.
  • Tipovi referenci za izravne reference na objekte u kodu WebAssembly.
  • Sposobnost pozivanja funkcija bez trošenja dodatnog prostora na stogu.
  • Integracija s ECMAScript modulima: mogućnost učitavanja WebAssembly koda iz JavaScript-a kao modula koji su u skladu sa ECMAScript 6 specifikacijom.
  • Način rada sa sakupljačem smeća.
  • Sučelja za otklanjanje grešaka.
  • WASI (WebAssembly System Interface): API za direktnu interakciju s operativnim sistemom (POSIX API za rad s datotekama, utičnicama itd.).

Ako želite znati više o tome, možete pogledati originalnu napomenu Na sledećem linku.


Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Odgovoran za podatke: AB Internet Networks 2008 SL
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.