W3C uczyniło WebAssembly zalecanym standardem

W zeszłym miesiącu udostępniliśmy tutaj na blogu o wiadomość, że Mozilla, Fastly, Intel i Red Hat połączyły siły w celu opracowania technologie, które tworzą WebAssembly (Jeśli chcesz dowiedzieć się więcej o nowościach, zajrzyj do nich ten link) a teraz kilka tygodni po tej wiadomości Konsorcjum W3C ogłosiło, że technologia WebAssembly stał się zalecanym standardem.

Dla tych, którzy nie są zaznajomieni z WebAssembly powinni to wiedzieć zapewnia to oprogramowanie pośredniczące uniwersalny niezależny od przeglądarki niskopoziomowy do uruchamiania aplikacji skompilowane z różnych języków programowania. WebAssembly jest najbardziej obiecującą i przenośną technologią dla różnych przeglądarek do tworzenia wysokowydajnych aplikacji internetowych.

Zgromadzenie sieciowe se może być używany do rozwiązywania zadań wymagających wysokiej wydajnościna przykład kodowanie wideo, przetwarzanie dźwięku, grafika 3D i manipulacja, tworzenie gier, operacje kryptograficzne, obliczenia matematyczne i tworzenie przenośnych implementacji języków programowania.

WebAssembly wygląda bardzo podobnie do Asm.js., ale różni się tym, że jest to format binarny, który nie jest powiązany z JavaScriptem. WebAssembly nie wymaga użycia modułu wyrzucania elementów bezużytecznych, ponieważ używane jest jawne zarządzanie pamięcią.

Charakterystyczna cecha modelu wykonywania aplikacji korzystających z WASUruchamiam w środowisku piaskownicy odizolowanie się od głównego systemu i wykorzystanie mechanizmu bezpieczeństwa opartego na zarządzaniu pojemnością dla działań z każdym z zasobów (pliki, katalogi, gniazda, wywołania systemowe itp.)

Włączając JIT dla WebAssembly, możesz osiągnąć poziomy wydajności zbliżone do kodu natywnego. Do głównych zadań WebAssembly należy zapewnienie przenośności, przewidywalności zachowania i tożsamości wykonywania kodu na różnych platformach.

WebZespół 1

Ostatnio WebAssembly rozwija się również jako platforma uniwersalna aby bezpiecznie uruchamiać kod na dowolnej infrastrukturze, systemie operacyjnym i urządzeniu, nie tylko w przeglądarkach.

W3C ustandaryzowało trzy specyfikacje związane z WebAssembly:

  1. WebRdzeń zespołu- Zdefiniowana jako maszyna wirtualna niskiego poziomu, która ściśle naśladuje funkcjonalność wielu mikroprocesorów, na których działa. Poprzez kompilację lub interpretację just-in-time, silnik WebAssembly może działać z prędkością zbliżoną do skompilowanego kodu dla platformy natywnej.
    Zasób .był m jest analogiczne do pliku .klasa Java w tym sensie, że zawiera statyczne dane i segmenty kodu, które działają na tych statycznych danych. W przeciwieństwie do Java, WebAssembly jest generalnie tworzona jako cel kompilacji dla innych języków programowania, takich jak C / C ++ i Rust.
  2. Web API WebAssembly: definiuje interfejs programistyczny oparty na mechanizmie Promise do żądania i wykonywania zasobów „.wasm”. Format zasobów WebAssembly jest zoptymalizowany pod kątem rozpoczęcia wykonywania bez czekania na pełne załadowanie pliku, co poprawia szybkość reakcji aplikacji internetowych.
  3. Interfejs JavaScript WebAssembly: zapewnia interfejs API do integracji z JavaScript. Umożliwia pobieranie wartości i przekazywanie parametrów do funkcji WebAssembly. Wykonanie WebAssembly odpowiada modelowi bezpieczeństwa JavaScript, a cała interakcja z hostem przebiega podobnie jak wykonanie kodu JavaScript.

W przyszłości planowane jest przygotowanie specyfikacje funkcji WebAssembly, takich jak:

  • Wielowątkowość z pamięcią współdzieloną i dostępem do pamięci atomowej.
  • Operacje wektorowe oparte na SIMD, które pozwalają na zrównoleglenie wykonywania cykli.
  • Typy odwołań dla bezpośrednich odwołań do obiektów w kodzie zestawu WebAssembly.
  • Możliwość wywoływania funkcji bez zajmowania dodatkowego miejsca na stosie.
  • Integracja z modułami ECMAScript: możliwość załadowania kodu WebAssembly z JavaScript jako moduły zgodne ze specyfikacją ECMAScript 6.
  • Sposób pracy ze śmieciarką.
  • Interfejsy debugowania.
  • WASI (WebAssembly System Interface): API do bezpośredniej interakcji z systemem operacyjnym (API POSIX do pracy z plikami, gniazdami itp.).

Jeśli chcesz dowiedzieć się więcej na ten temat, zapoznaj się z oryginalną notatką W poniższym linku.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.