W3C padarė „WebAssembly“ rekomenduojamą standartą

Praėjusį mėnesį pasidalijome čia tinklaraštyje apie žinia, kad „Mozilla“, „Fastly“, „Intel“ ir „Red Hat“ drauge kūrėsi technologijas, kurios sukuria WebAssembly (Jei norite sužinoti daugiau apie naujienas, galite jomis susipažinti ši nuoroda) ir dabar praėjus kelioms savaitėms po šios žinios W3C konsorciumas paskelbė, kad technologija WebAssembly tai tapo rekomenduojamu standartu.

Tiems, kurie nėra susipažinę su „WebAssembly“ jie turėtų tai žinoti tai suteikia tarpinę programinę įrangą universalus nuo naršyklės nepriklausomas žemas lygis programoms paleisti sudarytas iš įvairių programavimo kalbų. „WebAssembly“ laikoma perspektyviausia ir nešiojama kelių naršyklių technologija, skirta kurti našias žiniatinklio programas.

Žiniatinklio asamblėjos se galima panaudoti sprendžiant užduotis, kurioms reikia aukšto našumo, pavyzdžiui, vaizdo kodavimas, garso apdorojimas, 3D grafika ir manipuliavimas, žaidimų kūrimas, kriptografinės operacijos, matematiniai skaičiavimai ir nešiojamų programavimo kalbų diegimas.

WebAssembly atrodo panašiai kaip Asm.js, bet skiriasi tuo, kad tai yra dvejetainis formatas, kuris nėra susietas su „JavaScript“. „WebAssembly“ nereikia naudoti šiukšlių surinkėjo, nes naudojamas aiškus atminties valdymas.

Skiriamasis bruožas WAS naudojančių programų vykdymo modelioAš paleidžiu smėlio dėžės aplinkoje atskirti nuo pagrindinės sistemos ir naudoti saugumo mechanizmą, pagrįstą pajėgumų valdymu, atliekant veiksmus su kiekvienu iš išteklių (failais, katalogais, lizdais, sistemos skambučiais ir kt.)

Įgalinę JIT „WebAssembly“, galite pasiekti našumo lygį, artimą savajam kodui. Tarp pagrindinių „WebAssembly“ užduočių yra perkeliamumas, elgesio nuspėjamumas ir kodo vykdymo tapatumas skirtingose ​​platformose.

Žiniatinklio asamblėja 1

Neseniai „WebAssembly“ taip pat tobulėja kaip universali platforma saugiai paleisti kodą bet kurioje infrastruktūroje, operacinėje sistemoje ir įrenginyje, neapsiribojant vien naršyklėmis.

W3C standartizavo tris specifikacijas susiję su „WebAssembly“:

  1. „WebAssembly Core“- Apibrėžta kaip žemo lygio virtuali mašina, kuri tiksliai imituoja daugelio joje veikiančių mikroprocesorių funkcionalumą. Kompiliacija ar tiesioginio laiko interpretacija „WebAssembly“ variklis gali veikti beveik kompiliuojamo kodo, skirto vietinei platformai, greičiu.
    Ištekliai .masm yra analogas failui .klasė „Java“ ta prasme, kad joje yra statiniai duomenys ir kodo segmentai, kurie veikia tuos statinius duomenis. Skirtingai nuo „Java“, „WebAssembly“ paprastai kuriamas kaip kompiliavimo tikslas kitoms programavimo kalboms, tokioms kaip C / C ++ ir Rust.
  2. „WebAssembly Web API“: apibrėžia programavimo sąsają, pagrįstą „Promise“ mechanizmu, reikalaujant ir vykdant „.wasm“ išteklius. „WebAssembly“ išteklių formatas yra optimizuotas pradėti vykdyti nelaukiant, kol failas bus visiškai įkeltas, pagerinant žiniatinklio programų reagavimą.
  3. „WebAssembly“ „JavaScript“ sąsaja: pateikia API integruoti su „JavaScript“. Leidžia gauti vertes ir perduoti parametrus „WebAssembly“ funkcijoms. „WebAssembly“ vykdymas atitinka „JavaScript“ saugos modelį, o visa sąveika su pagrindiniu kompiuteriu vykdoma panašiai kaip „JavaScript“ kodo vykdymas.

Ateityje planuojama ruoštis „WebAssembly“ funkcijų specifikacijos, tokios kaip:

  • Daugialypis sriegis su bendra atmintimi ir atominės atminties prieiga.
  • Vektorinės operacijos, pagrįstos SIMD, leidžiančios lygiagrečiai vykdyti ciklus.
  • Nuorodų tipai, skirti tiesioginėms nuorodoms į „WebAssembly“ kodo objektus.
  • Galimybė iškviesti funkcijas neišleidžiant papildomos vietos kamino.
  • Integracija su „ECMAScript“ moduliais: galimybė įkelti „WebAssembly“ kodą iš „JavaScript“ kaip modulių, atitinkančių „ECMAScript 6“ specifikaciją.
  • Darbo su šiukšlių surinkėju būdas.
  • Derinimo sąsajos.
  • WASI („WebAssembly System Interface“): API tiesioginei sąveikai su operacine sistema (POSIX API, skirta dirbti su failais, lizdais ir kt.).

Jei norite sužinoti daugiau apie tai, galite peržiūrėti originalų užrašą Šioje nuorodoje.


Palikite komentarą

Jūsų elektroninio pašto adresas nebus skelbiamas. Privalomi laukai yra pažymėti *

*

*

  1. Už duomenis atsakingas: AB Internet Networks 2008 SL
  2. Duomenų paskirtis: kontroliuoti šlamštą, komentarų valdymą.
  3. Įteisinimas: jūsų sutikimas
  4. Duomenų perdavimas: Duomenys nebus perduoti trečiosioms šalims, išskyrus teisinius įsipareigojimus.
  5. Duomenų saugojimas: „Occentus Networks“ (ES) talpinama duomenų bazė
  6. Teisės: bet kuriuo metu galite apriboti, atkurti ir ištrinti savo informaciją.