Wasmer, tööriistakomplekt WebAssembly rakenduste jaoks

Pärast kahte aastat arengut kuulutati välja esimese versiooni väljaandmine märkimisväärne projekt Wasmer, mis töötab WebAss Assembly moodulite käitamiseks välja töötamisaja.

Wasmeri kasutusalad hõlmama universaalsete rakenduste loomist mida saab hukata erinevatel opsüsteemidel, samuti ebausaldusväärse koodi isoleeritud täitmise korraldamine. Toetatakse serverirakenduste loomise kaasamist, näiteks demonstreeriti WebAssembleemis kompileeritud Nginxi serveri väljaandmist.

Wasmeri kohta

Teisaldatavus see saavutatakse rakenduskoodi kompenseerimisega vahevara Madalama tasemega veebikoosseis, mida saab käitada mis tahes opsüsteemis või integreerida programmidesse teistes programmeerimiskeeltes.

Programmid need on kerged konteinerid, mis käitavad pseudokoodi WebAssembly. Need konteinerid pole operatsioonisüsteemiga seotud ja võivad sisaldada rakendusi, mis on algselt kirjutatud mis tahes programmeerimiskeeles.

Tööriistakomplekt Emscripteni saab kasutada veebiassamblee koostamiseksLisaks WebAssembly tõlkimisele praeguse platvormi masinakoodiks on ühendatud mitu raamistikku, näiteks LLVM ja Cranelifti koodigeneraator.

Teiselt poolt tagatakse juurdepääsu kontroll ja süsteemiga suhtlemine WASI (WebAssembly System Interface) API kaudu, mis pakub programmeerimisliideseid failide, pistikupesade ja muude operatsioonisüsteemi pakutavate funktsioonide kasutamiseks.

peale selle rakendused on hosti süsteemist isoleeritud liivakasti keskkonnas ja neil on juurdepääs ainult deklareeritud funktsionaalsusele (haldusvõimalustel põhinev turvamehhanism; iga ressursiga (failid, kataloogid, pistikupesad, süsteemikõned jne) toimingute jaoks peab rakendus saama vastavad volitused).

Programme levitatakse tavaliste WebAssembly moodulite kujul, mida saab hallata WAPM-i paketihalduri kaudu.

Wasmer ka on saadaval teegina, mida saab kasutada erinevates keeltes programmeerimine. Toetatakse veebiassamblee koodi manustamist Rust, C / C ++, C #, D, Python, JavaScripti, Go, PHP, Ruby, Elixiri ja Java programmidesse.

Kuna Wasmeri versiooni 1.0 omadused silma paistavad järgmised:

  • Töötavate rakenduste kõrge jõudlus, lähedane kohalike koostude käivitamisele ja suur kompileerimiskiirus.
  • Laiendatav arhitektuur koos võimalusega ühendada erinevaid kompileerimise taustaprogramme (Singlepass, Cranelift, LLVM) ja mootoreid (kasutades JIT-i või genereerides masinakoodi).
    Native Object Engine, mis võimaldab genereerida WebAssembly mooduli jaoks antud süsteemi jaoks masinakoodi ("wasmer-native compilation", et luua eelnevalt kompileeritud objektifaile .so, .dylib ja .dll
  • Eelkompileeritud kood nõuab käivitamiseks minimaalset täitmisaega, kuid kõik liivakasti isoleerimisvõimalused säilivad.
  • Peata režiim sisseehitatud Wasmeriga eelnevalt kompileeritud programmide edastamiseks.
    Ristkompileerimise tugi näiteks A64 arhitektuuri masinkoodi genereerimiseks x86_64 süsteemis.
  • Lihtne API pistikprogrammide ja pistikprogrammide loomiseks, ilma et oleks vaja õppida täpsemaid WebAssembly kontseptsioone.
  • WASM-C-API tugi.
  • Tööriistad silumiseks ja tõrkeotsinguks.

Lõpuks Kui olete huvitatud Wasmeri kohta lisateabe saamisest, sa peaksid teadma, et eProjekti kood on kirjutatud Rustis, see on olemas la MIT-litsentsi ja selle üksikasju saate vaadata selle ametlikul veebisaidil aadressil järgmine link.

Installige Wasmeri käitusaeg

Teisest küljest peate neile, kes on huvitatud WebAssembly konteineri käitamisest, oma süsteemi installima ainult Wasmeri käituse, mis on ilma väliste sõltumusteta.

Oluline on seda mainida Wasmerit saab kasutada mis tahes platvormil MacOS, Linux ja Windows, ainus nõue on, et selle käitusaeg oleks teie süsteemi installitud.

Selleks käivitage lihtsalt terminalis järgmine käsk:

lokkima https://get.wasmer.io -sSfL | sh

Ja pärast seda peavad nad käivitama vajaliku faili:

pesuri test.wasm

Kui teil on vaja rohkem teada saada, kuidas Wasmer töötab, või soovite teada selle lähtekoodi, võite kõigega tutvuda Järgmisel lingil.


Jäta oma kommentaar

Sinu e-postiaadressi ei avaldata. Kohustuslikud väljad on tähistatud *

*

*

  1. Andmete eest vastutav: AB Internet Networks 2008 SL
  2. Andmete eesmärk: Rämpsposti kontrollimine, kommentaaride haldamine.
  3. Seadustamine: teie nõusolek
  4. Andmete edastamine: andmeid ei edastata kolmandatele isikutele, välja arvatud juriidilise kohustuse alusel.
  5. Andmete salvestamine: andmebaas, mida haldab Occentus Networks (EL)
  6. Õigused: igal ajal saate oma teavet piirata, taastada ja kustutada.