جعل W3C WebAssembly معيارًا موصى به

شاركنا الشهر الماضي هنا في المدونة حول الأخبار التي تعاونت من أجل تطويرها Mozilla و Fastly و Intel و Red Hat التقنيات التي تصنع WebAssembly (إذا كنت تريد معرفة المزيد عن الأخبار ، يمكنك الرجوع إليها هذا الرابط) و الآن بعد أسابيع قليلة من تلك الأخبار أعلن اتحاد W3C أن هذه التكنولوجيا WebAssembly لقد أصبح المعيار الموصى به.

لأولئك الذين ليسوا على دراية بـ WebAssembly يجب أن يعرفوا ذلك هذا يوفر برمجية وسيطة بالمذيب مستوى منخفض مستقل عن المستعرض لتشغيل التطبيقات تجميع وانتاج من لغات البرمجة المختلفة. تم تصنيف WebAssembly باعتباره أكثر تقنيات المستعرضات الواعدة والمحمولة لبناء تطبيقات ويب عالية الأداء.

WebAssembly الصورةيمكن استخدام البريد لحل المهام التي تتطلب أداءً عاليًا، على سبيل المثال ، ترميز الفيديو ومعالجة الصوت والرسومات ثلاثية الأبعاد والمعالجة وتطوير الألعاب وعمليات التشفير والحسابات الرياضية وإنشاء تطبيقات محمولة للغات البرمجة.

WebAssembly يشبه إلى حد كبير Asm.js، لكنه يختلف من حيث أنه تنسيق ثنائي غير مرتبط بجافا سكريبت. لا يتطلب WebAssembly استخدام أداة تجميع البيانات المهملة ، نظرًا لاستخدام إدارة الذاكرة الصريحة.

سمة مميزة لنموذج تنفيذ التطبيقات التي تستخدم WASأنا أبدأ في بيئة رمل للعزل عن النظام الرئيسي واستخدام آلية أمنية تعتمد على إدارة القدرات ، للإجراءات مع كل من الموارد (الملفات ، والأدلة ، والمآخذ ، واستدعاءات النظام ، وما إلى ذلك)

من خلال تمكين JIT لـ WebAssembly ، يمكنك تحقيق مستويات أداء قريبة من التعليمات البرمجية الأصلية. من بين المهام الرئيسية لـ WebAssembly توفير إمكانية النقل وإمكانية التنبؤ بالسلوك وهوية تنفيذ التعليمات البرمجية على منصات مختلفة.

تجميع الويب 1

في الآونة الأخيرة، تتقدم WebAssembly أيضًا كمنصة عالمية لتشغيل التعليمات البرمجية بأمان على أي بنية أساسية ونظام تشغيل وجهاز ، وليس مقصورًا على المتصفحات.

قامت W3C بتوحيد ثلاث مواصفات المتعلقة بـ WebAssembly:

  1. WebAssembly الأساسية- مُعرَّف بأنه آلة افتراضية منخفضة المستوى تحاكي عن كثب وظائف العديد من المعالجات الدقيقة التي تعمل عليها. إما من خلال الترجمة أو تفسير Just-In-Time ، يمكن لمحرك WebAssembly التشغيل تقريبًا بسرعة الشفرة المجمعة لمنصة أصلية.
    مورد .كان م مشابه لملف .فئة من Java بمعنى أنها تحتوي على بيانات ثابتة وأجزاء التعليمات البرمجية التي تعمل على تلك البيانات الثابتة. على عكس Java ، يتم إنتاج WebAssembly عمومًا كهدف تجميع للغات البرمجة الأخرى مثل C / C ++ و Rust.
  2. API WebAssembly الويب: يحدد واجهة برمجة تعتمد على آلية الوعد لطلب موارد ".wasm" وتنفيذها. تم تحسين تنسيق موارد WebAssembly لبدء التنفيذ دون انتظار تحميل الملف بالكامل ، مما يؤدي إلى تحسين استجابة تطبيقات الويب.
  3. واجهة WebAssembly JavaScript: يوفر API للتكامل مع JavaScript. يسمح لك بالحصول على القيم وتمرير المعلمات إلى وظائف WebAssembly. يتوافق تنفيذ WebAssembly مع نموذج أمان JavaScript ، ويتم تنفيذ كل تفاعل مع المضيف بطريقة مشابهة لتنفيذ تعليمات JavaScript البرمجية.

في المستقبل ، تم التخطيط للتحضير مواصفات وظائف WebAssembly مثل:

  • تعدد مؤشرات الترابط مع الذاكرة المشتركة والوصول إلى الذاكرة الذرية.
  • عمليات المتجهات القائمة على SIMD ، والتي تسمح بالتوازي مع تنفيذ الدورات.
  • أنواع المراجع للمراجع المباشرة للكائنات في رمز WebAssembly.
  • القدرة على استدعاء الوظائف دون إنفاق مساحة إضافية على المكدس.
  • التكامل مع وحدات ECMAScript: القدرة على تحميل رمز WebAssembly من JavaScript كوحدات نمطية تتوافق مع مواصفات ECMAScript 6.
  • طريقة العمل مع جامع القمامة.
  • واجهات التصحيح.
  • WASI (واجهة نظام WebAssembly): واجهة برمجة تطبيقات للتفاعل المباشر مع نظام التشغيل (POSIX API للعمل مع الملفات والمآخذ وما إلى ذلك).

إذا كنت تريد معرفة المزيد عنها ، يمكنك الرجوع إلى الملاحظة الأصلية في الرابط التالي.


اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: AB Internet Networks 2008 SL
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.