Mozilla, Fastly, Intel un Red Hat reklamē WebAssembly kā universālu platformu

WebAssembly

Mozilla, Fastly, Intel un Red Hat ir apvienojušies attīstīt tehnoloģijas, kas padara WebAssembly universāla platforma lai droši palaistu kodu jebkurā infrastruktūrā, operētājsistēma un ierīce. Izpildlaika un kompilatoru kopīgai izstrādei, kas ļauj WebAssembly izmantot ne tikai tīmekļa pārlūkprogrammās, ir izveidota Bytecode Alliance kopiena.

Lai izveidotu pārnēsājamās programmas piegādāts WebAssemble formātā ko var izpildīt ārpus pārlūkprogrammas, tiek ieteikts izmantot WASI API (WebAssembly sistēmas saskarne), kas nodrošina programmu saskarnes tiešai mijiedarbībai ar operētājsistēmu (POSIX API darbam ar failiem, ligzdām utt.).

Atšķirīga iezīme to lietojumprogrammu izpildes modeli, kuras izmanto WASEs palaižu smilšu kastes vidē lai norobežotos no galvenās sistēmas un drošības mehānisma, kas balstīts uz jaudas pārvaldību, darbībām ar katru no resursiem (faili, direktoriji, kontaktligzdas, sistēmas zvani utt.) lietojumprogrammai ir jābūt atbilstošai autorizācijai (piekļuve tiek nodrošināta tikai līdz deklarētajai funkcionalitātei).

Uno alianses mērķu sasniegšanai izveidots ir atrisināt moderno modulāro lietojumprogrammu izplatīšanas problēmu ar daudzām atkarībām. Šādās lietojumprogrammās katra atkarība var būt potenciāls ievainojamības vai uzbrukumu avots. Atkarības kontroles iegūšana ļauj iegūt kontroli pār visām ar to saistītajām lietojumprogrammām.

Bytecode Alliance dalībnieki plāno sagatavot pilnīgu risinājumu sākotnēji neuzticamu WebAssembly lietojumprogrammu drošai izpildei.

Aizsardzībai, tiek ierosināts izmantot nanoprocesa jēdzienus, kurā katrs atkarības modulis ir atdalīts atsevišķā izolētā WebAssembly modulī, kura autoritāte ir konfigurēta saistīšanai tikai ar šo moduli (piemēram, virkņu apstrādes bibliotēka nevar atvērt tīkla kontaktligzdu vai failu).

Atšķirībā no procesa atdalīšanas WebAssemble apstrādātāji ir viegli un gandrīz neprasa papildu resursus Turklāt mijiedarbība starp apstrādātājiem nav daudz lēnāka nekā parasto funkciju izsaukšana.

Kopīgai attīstībai Bytecode Alliance paspārnē tika nodoti vairāki ar WebAssembly saistīti projekti, kurus iepriekš atsevišķi izstrādāja alianses dibinātāji:

  • bija laiksa izpildlaiks WebAssembly lietojumprogrammu darbināšanai ar WASI paplašinājumiem kā parastās atsevišķās lietotnes. Tas atbalsta WebAssemble bytecode palaišanu, izmantojot īpašu komandrindas utilītu, un noformējamo izpildāmo failu noformēšanu (wasmtime ir iebūvēts lietojumprogrammā kā bibliotēka).
  • Luseta: ir kompilators un izpildlaiks, lai palaistu programmas WebAssembly formātā. Lucet atšķirīgā iezīme ir pilnīgas profilaktiskas kompilācijas (AOT, iepriekšēja) izmantošana mašīnas kodā, kas piemērots tiešai izpildei, nevis JIT. Projektu izstrādāja Fastly un optimizēja, lai patērētu minimālus resursus un ātri palaistu jaunus gadījumus. Kopīga projekta ietvaros ir paredzēts mainīt Lucet kompilatoru, lai par pamatu izmantotu Wasmtime.
  • WAMR (WebAssemble Micro Runtime): es vēl viens izpildlaiks, lai palaistu WebAssemble, sākotnēji Intel izstrādājis lietošanai IoT ierīcēs. WAMR tas ir optimizēts minimālam resursu patēriņam un to var izmantot ierīcēs ar nelielu RAM daudzumu. Projektā ir iekļauts tulks un virtuālā mašīna WebAssemble bytecode palaišanai, API (Libc apakškopa) un rīki, lai dinamiski pārvaldītu lietojumprogrammas.
  • Celtņa pacēlājs: es kodu ģenerators, kas no aparatūras neatkarīgu starpposma attēlojumu pārveido mašīnkodā izpildāms optimizēts konkrētām aparatūras platformām. Cranelift atbalsta funkciju kompilēšanas paralelizāciju ļoti ātrai izejas ģenerēšanai, ļaujot to izmantot, lai izveidotu JIT kompilatorus (uz Cranelift bāzes JIT tiek izmantots Wasmtime virtuālajā mašīnā).
  • BIJU ES: una atsevišķa WASI API ieviešana (Web Assembly System Interface), lai organizētu mijiedarbību ar operētājsistēmu.
  • kravas-wasi: un modulis kravas paku vadītājam kas ievieš komandu, lai apkopotu Rust kodu WebAssemble bytecode, izmantojot WASI saskarni, lai WebAssembly izmantotu ārpus pārlūkprogrammas.
  • vats un vasks: parsers, lai analizētu tekstu (WAT, WAST) un WebAssemble baitu koda bināros attēlojumus.

Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: AB Internet Networks 2008 SL
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   01101001b teica

    "Atšķirībā no procesu atdalīšanas, WebAssembly apstrādātāji ir viegli un gandrīz neprasa papildu resursus" ...
    Tā kā Mozilla un Red Hat ir sajaukti, novērojums "viegls un gandrīz neprasa papildu resursus" ir veids, kā kļūt par fenomenālu joku xD