WASI proyek Mozilla nggunakake WebAss Assembly ing sanjabane browser

WASI proyek Mozilla nggunakake WebAss Assembly ing sanjabane browser

Pangembang Mozilla nampilake proyek WASI (WebAss Assembly System Interface), sing digunakake kanggo netepake antarmuka piranti lunak sing bisa digunakake kanggo ngatur interaksi aplikasi sing dikirim ing format WebAss Assembly karo sistem operasi.

Tujuan proyek yaiku nyedhiyakake API sing ngluwihi panggunaan WebAss Assembly lan ngidini sampeyan nggawe program adhedhasar biasa Ing teknologi iki sing mbukak njaba browserDheweke portabel menyang platform apa wae lan nduduhake level keamanan sing dhuwur.

Apa sing diarani WASI?

WASI ngidini lingkungan WebAss Assembly duwe akses menyang fungsi sing diwenehake dening sistem operasikayata file, sistem file, soket jaringan, timer, lan generator nomer acak.

WASI API wiwitane dikembangake dadi non-browser sing kaiket lan mandiri saka JavaScript / Web API, nanging ing wektu sing padha nyedhiyakake level isolasi sistem sing cukup utama (aplikasi mbukak ing kothak wedhi) lan ngidini sampeyan kanthi jelas nemtokake panguwasa sing diwenehake menyang aplikasi kanthi gaya CloudABI lan Capsicum.

WASI nggunakake model keamanan adhedhasar manajemen idin, sajrone program kasebut kanthi sengaja bisa nindakake tumindak sing sah.

Mirip karo carane WebAss Assembly matesi akses ing level fungsi impor, WASI ngontrol akses menyang kapabilitas sistem.

File, direktori, soket, lan sumber daya liyane digandhengake karo jinis deskriptor (kapasitas) file khusus, lan aplikasi kasebut kudu duwe idin kanggo tumindak ing saben sumber daya.

Idin dikelola kanthi hirarkis, yaiku, akses menyang direktori kanthi otomatis dibukak lan akses menyang kabeh file sing ana.

Wiwit WebAss Assembly minangka versi basa majelis independen platform, panggunaan JIT bisa nggayuh level kinerja sing cedhak karo kode asli, nalika tetep nduweni kemampuan mbukak ing macem-macem platform hardware lan sistem operasi.

Saiki proyek kasebut nyedhiyakake modul wasi-core kanthi implementasi API POSIX dhasar (file, soket, lsp.), Sing saiki kurang dhukungan kanggo kunci lan I / O. asinkron.

Ing mangsa ngarep, direncanakake nggawe modul kanthi implementasi API kanggo nindakake operasi kriptografi, bisa digunakake nganggo grafis 3D, sesambungan karo sensor, operasi karo proses (telpon garpu durung didhukung) lan proses data multimedia.

Prototipe komponen

Wasmtime minangka runtime sing tanggung jawab kanggo nglakokake aplikasi adhedhasar WebAss Assembly kanthi ekstensi WASI minangka aplikasi mandiri biasa.

Se ndhukung diluncurake bytecode WebAss Assembly kanthi bantuan utilitas baris komando khusus lan desain file eksekusi sing siap digunakake (wasmtime dibangun ing aplikasi kasebut minangka perpustakaan).

Kanggo nggayuh level kinerja sing cocog, digunakake kompilator JIT adhedhasar generator kode munggah pangkat.

Lucet minangka versi runtime liyane saka proyek Cepet (kode kasebut dijadwalake diterbitake dina iki utawa sesuk).

WASI SDK- Piranti kanggo nyusun aplikasi C / C ++ ing format perakitan web nggunakake Clang 8.0.

Target target kanthi dhukungan WASI kanggo basa Rust, sing ngidini sampeyan nyusun kode Rust menyang WebAss Assembly.

Wasi-sysroot minangka implementasi perpustakaan libc standar kanggo WASI, adhedhasar kode Musl, uga lapisan runtime kanggo nerjemahake fungsi sing diwenehake dening perpustakaan dadi panggilan sistem saka macem-macem sistem operasi kanggo nggayuh kemungkinan mbukak aplikasi WASI ing macem-macem sistem operasi.

Proyek kasebut uga nggawe perpustakaan JavaScript polyfill kanthi implementasi WASI kanggo mbukak aplikasi ing browser., sing ngidini ngetrapake model kontrol akses "kapabilitas" menyang kode sing dieksekusi ing browser.

Saka rencana kasebut, nggawe sistem modul adhedhasar WASI kanggo integrasi menyang aplikasi plug-in sing terisolasi kanthi fungsi tambahan sing disedhiyakake ing format WebAss Assembly.

Salah sawijining tugas utama WebAss Assembly yaiku njamin portabilitas, prediksi prilaku, lan identitas eksekusi kode ing macem-macem platform.


Konten artikel kasebut sesuai karo prinsip kita yaiku etika editorial. Kanggo nglaporake klik kesalahan Kene.

Dadi pisanan komentar

Ninggalake komentar sampeyan

Panjenengan alamat email ora bisa diterbitake. Perangkat kothak ditandhani karo *

*

*

  1. Tanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Kontrol SPAM, manajemen komentar.
  3. Legitimasi: idin sampeyan
  4. Komunikasi data: Data kasebut ora bakal dikomunikasikake karo pihak katelu kajaba kanthi kewajiban ukum.
  5. Panyimpenan data: Database sing dianakake dening Occentus Networks (EU)
  6. Hak: Kapan wae sampeyan bisa matesi, mulihake lan mbusak informasi sampeyan.