W3C udělil WebAssembly status doporučeného standardu

Konsorcium W3C oznámil o udělení technologie WebAssembly statusu doporučeného standardu. WebAssembly nabízí nezávislý na prohlížeči univerzální nízkoúrovňový mezikód pro spouštění aplikací zkompilovaných z různých programovacích jazyků. WebAssembly se profiluje jako perspektivnější a přenosnější technologie pro vytváření vysoce výkonných webových aplikací. WebAssembly může být využito pro úkoly vyžadující vysoký výkon, jako je kódování videa, zpracování zvuku, manipulace s grafikou a 3D, vývoj her, kryptografické operace, matematické výpočty a vytváření přenosných implementací programovacích jazyků.

WebAssembly má mnoho společného s Asm.js, ale liší se tím, že je binárním formátem, který není vázán na JavaScript. V WebAssembly není třeba používat garbage collector, protože je zajištěno explicitní řízení paměti. Díky zapojení JIT pro WebAssembly lze dosáhnout úrovně výkonu blízkého nativnímu kódu. Mezi hlavními cíli WebAssembly je zajištění přenositelnosti, předvídatelnosti chování a identity provádění kódu na různých platformách. V poslední době je WebAssembly také propagováno jako univerzální platforma pro bezpečné provádění kódu v jakýchkoli infrastrukturách, operačních systémech a zařízeních, nikoli pouze v prohlížečích.

W3C standardizoval tři specifikace související s WebAssembly:

  • WebAssembly Core — popisuje nízkoúrovňový virtuální stroj pro provádění mezikódu WebAssembly. Související zdroje WebAssembly jsou dodávány v formátu „.wasm“, který připomíná soubor „.class“ v Javě a obsahuje statická data a segmenty kódu pro práci s těmito daty.
  • WebAssembly Web API — definuje programové rozhraní založené na mechanizmu Promise pro dotazování a provádění zdrojů „.wasm“. Formát zdrojů WebAssembly je optimalizován pro spuštění aniž by bylo nutné čekat na plné načtení souboru, což zvyšuje reaktivitu webových aplikací.
  • WebAssembly JavaScript Interface — poskytuje API pro integraci s JavaScriptem. Umožňuje získávat hodnoty a předávat parametry funkcím WebAssembly. Provádění WebAssembly odpovídá bezpečnostnímu modelu JavaScriptu a veškerá interakce s hlavním systémem probíhá podobně jako vykonávání kódu JavaScriptu.

V budoucnu se plánuje připravit specifikace pro takové možnosti WebAssembly, jako jsou:

  • Vícevláknovost se sdílenou pamětí a atomickým přístupem k paměti;
  • Vektorové operace na základě SIMD, umožňující paralelizaci provádění cyklů;
  • Referenční typy pro přímé odkazy na objekty z kódu WebAssembly;
  • Možnost volání funkcí bez zbytečné spotřeby místa na zásobníku;
  • Integrace s moduly ECMAScript — možnost načítání kódu WebAssembly z JavaScriptu jako modulů vyhovujících specifikaci ECMAScript 6;
  • Režim práce se správcem paměti;
  • Ladicí rozhraní;
  • WASI (WebAssembly System Interface) — API pro přímou interakci s operačním systémem (POSIX API pro práci se soubory, sokety atd.).

    Zdroj: opennet.ru

Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster