Wasmer, joukko työkaluja WebAssembly-sovelluksiin

Kahden vuoden kehityksen jälkeen ensimmäisen version julkaisu ilmoitettiin merkittävä projekti Wasmer, joka kehittää ajonaikaisen ajan WebAssembly-moduulien ajamiseksi.

Pesurin käyttöalueet sisältää yleissovellusten luomisen joka voidaan suorittaa eri käyttöjärjestelmissä, samoin kuin epäluotettavan koodin eristetyn suorituksen järjestäminen. Palvelinsovellusten rakentamisen sisällyttämistä tuetaan, esimerkiksi WebAssembly-palveluun kootun Nginx-palvelimen julkaisu osoitettiin.

Tietoa henkilöstä Wasmer

Siirrettävyys saavutetaan kokoamalla sovelluskoodi väliohjelmistoon Matalan tason WebAss Assembly, joka voi toimia missä tahansa käyttöjärjestelmässä tai integroida ohjelmiin muilla ohjelmointikielillä.

Ohjelmat ne ovat kevyitä kontteja, jotka käyttävät WebAssembly-pseudokoodia. Nämä säilöt eivät ole sidoksissa käyttöjärjestelmään, ja ne voivat sisältää sovelluksia, jotka on kirjoitettu alun perin millä tahansa ohjelmointikielellä.

Toolkit Emscriptenia voidaan käyttää kääntämiseen WebAssembly-sovelluksessaSen lisäksi, että WebAssembly käännetään nykyisen alustan konekoodiksi, on yhdistetty useita kehyksiä, kuten LLVM ja Cranelift-koodigeneraattori.

Toisaalta pääsynhallinta ja vuorovaikutus järjestelmän kanssa tapahtuu WASI (WebAssembly System Interface) -sovellusliittymän kautta, joka tarjoaa ohjelmointirajapinnat tiedostojen, liitäntöjen ja muiden käyttöjärjestelmän tarjoamien toimintojen kanssa työskentelyyn.

Sen lisäksi sovellukset on eristetty isäntäjärjestelmästä hiekkalaatikkoympäristössä ja heillä on pääsy vain ilmoitettuihin toimintoihin (hallintamahdollisuuksiin perustuva suojausmekanismi; kunkin resurssin (tiedostot, hakemistot, pistorasiat, järjestelmäkutsut jne.) toimintoja varten sovelluksen on saatava vastaavat valtuudet).

Ohjelmat jaetaan tavallisten WebAssembly-moduulien muodossa, joita voidaan hallita WAPM-paketinhallinnan kautta.

Wasmer myös on saatavana kirjastona, jota voidaan käyttää useilla kielillä ohjelmointi. WebAssembly-koodin upottamista Rust-, C / C ++ -, C #, D-, Python-, JavaScript-, Go-, PHP-, Ruby-, Elixir- ja Java-ohjelmiin tuetaan.

suhteen Wasmer-version 1.0 ominaisuudet seuraavat erottuu:

  • Suorituskyky käynnissä olevissa sovelluksissa, lähellä alkuperäisten kokoonpanojen suorittamista ja suuri kääntönopeus.
  • Laajennettava arkkitehtuuri, jonka avulla voidaan yhdistää erilaisia ​​kääntötaustoja (Singlepass, Cranelift, LLVM) ja moottoreita (käyttämällä JIT: ää tai generoimalla konekoodia).
    Native Object Engine, joka mahdollistaa konekoodin luomisen tietylle järjestelmälle WebAssembly-moduulille ("wasmer-native -kokoelma" tuottaa ennalta käännettyjä .so-, .dylib- ja .dll-objektitiedostoja).
  • Esikäännetty koodi vaatii minimaalisen suoritusajan, mutta kaikki hiekkalaatikon eristysominaisuudet säilyvät.
  • Headless-tila toimittaa valmiiksi kootut ohjelmat sisäänrakennetulla Wasmerilla.
    Ristikokoelma tukee esimerkiksi konekoodin luomista Aarch64-arkkitehtuurille x86_64-järjestelmässä.
  • Yksinkertainen sovellusliittymä laajennusten ja laajennusten luomiseen ilman edistyneiden WebAssembly-käsitteiden oppimista.
  • Tuki WASM-C-API: lle.
  • Työkalut virheenkorjaukseen ja virheiden käsittelyyn.

Vihdoin Jos olet kiinnostunut oppimaan lisää Wasmerista, sinun pitäisi tietää, että eProjektikoodi on kirjoitettu Rust-muodossa la MIT-lisenssin ja voit tarkistaa sen tiedot virallisella verkkosivustolla osoitteessa seuraava linkki.

Asenna Wasmerin ajonaika

Toisaalta niille, jotka ovat kiinnostuneita suorittamaan WebAssembly-säilön, sinun on asennettava vain Wasmer-ajonaika järjestelmääsi, joka tulee ilman ulkoisia riippuvuuksia.

On tärkeää mainita se Wasmeria voidaan käyttää millä tahansa alustalla MacOS, Linux ja Windows, ainoa vaatimus on, että sen ajonaika on asennettu järjestelmään.

Suorita tämä suorittamalla seuraava komento terminaalissa:

käpristyä https://get.wasmer.io -sSfL | sh

Ja sen jälkeen heidän on suoritettava vaadittu tiedosto:

pesukoneen testi. wasm

Jos haluat tietää enemmän Wasmerin toiminnasta tai haluat tietää sen lähdekoodin, voit tutustua siihen Seuraavassa linkissä.


Ole ensimmäinen kommentti

Jätä kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *

*

*

  1. Vastaa tiedoista: AB Internet Networks 2008 SL
  2. Tietojen tarkoitus: Roskapostin hallinta, kommenttien hallinta.
  3. Laillistaminen: Suostumuksesi
  4. Tietojen välittäminen: Tietoja ei luovuteta kolmansille osapuolille muutoin kuin lain nojalla.
  5. Tietojen varastointi: Occentus Networks (EU) isännöi tietokantaa
  6. Oikeudet: Voit milloin tahansa rajoittaa, palauttaa ja poistaa tietojasi.