W3C нь WebAssembly санал болгосон стандарт статусыг өгдөг

W3C консорциум зарласан WebAssembly технологид санал болгож буй стандартын статус олгох тухай. WebAssembly нь янз бүрийн програмчлалын хэлнээс эмхэтгэсэн програмуудыг ажиллуулахад зориулсан хөтөчөөс хамааралгүй, бүх нийтийн, доод түвшний завсрын кодоор хангадаг. WebAssembly нь өндөр гүйцэтгэлтэй вэб програмуудыг бий болгоход илүү ирээдүйтэй, хөтчүүд хоорондын зөөврийн технологи юм. WebAssembly-ийг видео кодчилол, аудио боловсруулалт, график болон 3D хувиргалт, тоглоом боловсруулах, криптографийн үйлдэл, математик тооцоолол, програмчлалын хэлний зөөврийн хэрэгжилтийг бий болгох зэрэг гүйцэтгэл их шаарддаг ажлуудад ашиглаж болно.

WebAssembly нь Asm.js-тэй олон талаараа төстэй боловч JavaScript-тэй холбогдоогүй хоёртын формат гэдгээрээ ялгаатай. WebAssembly нь тодорхой санах ойн менежментийг ашигладаг тул хог цуглуулагч шаарддаггүй. WebAssembly-д зориулсан JIT-г ашигласнаар та үндсэн кодтой ойролцоо гүйцэтгэлийн түвшинд хүрч чадна. WebAssembly-ийн гол зорилго бол өөр өөр платформ дээр зөөврийн байдал, урьдчилан таамаглахуйц зан төлөв, ижил кодыг гүйцэтгэх явдал юм. Сүүлийн үед WebAssembly бас байна урагшлах Хөтөчөөр хязгаарлагдахгүй аливаа дэд бүтэц, үйлдлийн систем, төхөөрөмж дээр аюулгүй код гүйцэтгэх бүх нийтийн платформ юм.

W3C нь WebAssembly-тай холбоотой гурван үзүүлэлтийг стандартчилсан:

  • Вэб угсралтын цөм — WebAssembly завсрын кодыг гүйцэтгэх доод түвшний виртуал машиныг тайлбарласан. WebAssembly-тэй холбоотой нөөцүүд нь Java ".class" файлтай төстэй ".wasm" форматтай, статик өгөгдөл болон тэдгээр өгөгдөлтэй ажиллах кодын сегментүүдийг агуулсан байдаг.
  • WebAssembly Web API — “.wasm” нөөцийг хүсэх, гүйцэтгэх Promise механизм дээр суурилсан програмчлалын интерфейсийг тодорхойлдог. WebAssembly нөөцийн форматыг файлыг бүрэн ачаалахыг хүлээхгүйгээр ажиллуулж эхлэхийн тулд оновчтой болгосон бөгөөд энэ нь вэб програмуудын хариу үйлдлийг сайжруулдаг.
  • WebAssembly JavaScript интерфейс — JavaScript-тэй нэгтгэх API-г өгдөг. Утга авах, параметрүүдийг WebAssembly функцэд дамжуулах боломжийг танд олгоно. WebAssembly-ийн гүйцэтгэл нь JavaScript-ийн аюулгүй байдлын загварыг дагаж мөрддөг бөгөөд үндсэн системтэй харилцах бүх үйл ажиллагаа нь JavaScript кодыг гүйцэтгэхтэй ижил аргаар явагддаг.

Ирээдүйд бид WebAssembly-ийн онцлог шинж чанаруудыг бэлтгэхээр төлөвлөж байна:

  • Хуваалцсан санах ой болон атомын санах ойн хандалт бүхий олон урсгалтай;
  • SIMD дээр суурилсан вектор үйлдлүүд нь давталтын гүйцэтгэлийг параллель болгох боломжийг олгодог;
  • WebAssembly кодоос объектуудыг шууд лавлах лавлах төрлүүд;
  • Стек дээр нэмэлт зай зарцуулахгүйгээр функцуудыг дуудах чадвар;
  • ECMAScript модулиудтай нэгтгэх - ECMAScript 6-ийн тодорхойлолтод нийцсэн модуль болгон JavaScript-ээс WebAssembly кодыг ачаалах чадвар;
  • Хог цуглуулагч горим;
  • Дибаг хийх интерфейс;
  • WASI (WebAssembly System Interface) - Үйлдлийн системтэй шууд харилцах API (файл, залгуур гэх мэт ажиллахад зориулсан POSIX API).

    Эх сурвалж: opennet.ru

сэтгэгдэл нэмэх