W3C memberikan status Standar yang Direkomendasikan WebAssembly

Konsorsium W3C diumumkan tentang memberikan teknologi WebAssembly status standar yang direkomendasikan. WebAssembly menyediakan kode perantara tingkat rendah yang tidak bergantung pada browser, universal, untuk menjalankan aplikasi yang dikompilasi dari berbagai bahasa pemrograman. WebAssembly diposisikan sebagai teknologi portabel yang lebih menjanjikan dan lintas browser untuk membuat aplikasi web berkinerja tinggi. WebAssembly dapat digunakan untuk tugas-tugas intensif kinerja seperti pengkodean video, pemrosesan audio, manipulasi grafik dan 3D, pengembangan game, operasi kriptografi, komputasi matematika, dan membuat implementasi bahasa pemrograman portabel.

WebAssembly dalam banyak hal mirip dengan Asm.js, tetapi berbeda karena merupakan format biner yang tidak terikat dengan JavaScript. WebAssembly tidak memerlukan pengumpul sampah karena menggunakan manajemen memori eksplisit. Dengan menggunakan JIT untuk WebAssembly, Anda dapat mencapai tingkat kinerja yang mendekati kode asli. Di antara tujuan utama WebAssembly adalah memastikan portabilitas, perilaku yang dapat diprediksi, dan eksekusi kode yang identik pada platform berbeda. Akhir-akhir ini WebAssembly juga demikian maju sebagai platform universal untuk eksekusi kode aman pada infrastruktur, sistem operasi, dan perangkat apa pun, tidak terbatas pada browser.

W3C telah menstandardisasi tiga spesifikasi terkait WebAssembly:

  • Inti WebAssembly — menjelaskan mesin virtual tingkat rendah untuk mengeksekusi kode perantara WebAssembly. Sumber daya terkait WebAssembly hadir dalam format ".wasm", mirip dengan file ".class" Java, yang berisi data statis dan segmen kode untuk bekerja dengan data tersebut.
  • API Web Perakitan Web — mendefinisikan antarmuka pemrograman berdasarkan mekanisme Promise untuk meminta dan mengeksekusi sumber daya “.wasm”. Format sumber daya WebAssembly dioptimalkan untuk memulai eksekusi tanpa menunggu file dimuat sepenuhnya, sehingga meningkatkan respons aplikasi web.
  • Antarmuka JavaScript WebAssembly — Menyediakan API untuk integrasi dengan JavaScript. Memungkinkan Anda mendapatkan nilai dan meneruskan parameter ke fungsi WebAssembly. Eksekusi WebAssembly mengikuti model keamanan JavaScript dan semua interaksi dengan sistem utama dilakukan dengan cara yang sama seperti mengeksekusi kode JavaScript.

Ke depannya, kami berencana menyiapkan spesifikasi untuk fitur WebAssembly seperti:

  • Multithreading dengan memori bersama dan akses memori atom;
  • Operasi vektor berdasarkan SIMD, memungkinkan paralelisasi eksekusi loop;
  • Tipe referensi untuk mereferensikan objek secara langsung dari kode WebAssembly;
  • Kemampuan untuk memanggil fungsi tanpa menghabiskan ruang tambahan di stack;
  • Integrasi dengan modul ECMAScript - kemampuan untuk memuat kode WebAssembly dari JavaScript sebagai modul yang sesuai dengan spesifikasi ECMAScript 6;
  • Modus pengumpul sampah;
  • Men-debug antarmuka;
  • WSASI (Antarmuka Sistem WebAssembly) - API untuk interaksi langsung dengan sistem operasi (API POSIX untuk bekerja dengan file, soket, dll.).

    Sumber: opennet.ru

Tambah komentar