wamr: وقت تشغيل WebAssembly خفيف الوزن أعيد كتابته بلغة Zig
wamr، بواسطة cataggar، هو وقت تشغيل Micro WebAssembly خفيف الوزن يقوم بتنفيذ وحدات Wasm في بيئات مستقلة ومضمنة. يوفر بيئة تشغيل مركزة وأدوات تطوير لتشغيل الوحدات ودمجها في الأنظمة. يركز المشروع على الكفاءة والسلامة والامتثال الصارم للمواصفات مع استهداف السيناريوهات المحدودة الموارد والسحابية. المستخدمون المستهدفون هم المطورون ومهندسو الأنظمة الذين يحتاجون إلى وقت تشغيل صغير وقابل للتنبؤ من أجل سير العمل على الحافة أو المضمنة أو جانب الخدمة.
يوفر wamr كل من مترجم ومسار تجميع AOT لوحدات Wasm
يتضمن الحزمة مترجم مستقل، يسمى wamr، ومجمع مسبق، wamrc، يقوم بتحويل وحدات WebAssembly إلى كود آلة محسن. ينتج مسار المجمع كودًا محليًا قبل التنفيذ، مما يقلل من عبء التفسير لأحمال العمل الحساسة للأداء. يدعم هذا النموذج المزدوج تكرارات التطوير مع المترجم ونشر الإنتاج مع عناصر AOT، مما يسمح للمهندسين باختيار تسوية بين سرعة التكرار وسرعة التنفيذ.
تحسين إعادة كتابة Zig لسلامة الذاكرة وفرض التوافق الدقيق مع المواصفات
الوقت الحقيقي هو إعادة كتابة كاملة بلغة البرمجة Zig، والتي يشير المطور إلى أنها تحسن السلامة مقارنة بالتنفيذات السابقة المستندة إلى C. يحقق المشروع الامتثال الصارم للمواصفات، حيث يحقق توافقًا بنسبة 100 في المئة من خلال اجتياز أكثر من 20,000 تأكيد في مجموعة اختبارات WebAssembly الرسمية. تجعل تلك النتائج التحقق من الانحدارات السلوكية أقل احتمالًا عند تشغيل وحدات Wasm المحمولة عبر الأهداف.
دعم الاقتراحات الحديثة لـ Wasm والعديد من الأهداف يناسب النشر المقيد
تعلن التنفيذ عن دعم الاقتراحات الحديثة مثل SIMD v128، والذاكرة المتعددة، وmemory64، والتي تهم الأحمال العددية والسيناريوهات ذات العناوين الكبيرة. يتم البناء لأحد عشر هدفًا للمنصة، بما في ذلك Windows وmacOS وLinux وmusl وRISC-V وWASI، ويلاحظ المشروع بصمة خفيفة مناسبة للاستخدام المدمج والحافة. تساعد تلك الخصائص عند استهداف الأجهزة عبر المعمارية أو المحدودة الموارد.
تتوقع التثبيت وسير العمل معرفة المطور بسلاسل الأدوات
تشمل خيارات التثبيت استخدام مجموعة أدوات إصدار ghr أو تنزيل ثنائيات Windows المجمعة مسبقًا من الإصدارات، لذا يتوقع الإعداد الطلاقة في سطر الأوامر. تشير خلفية المطور واستقبال المجتمع إلى أن الأداة تستهدف مستخدمي Zig ومهندسي الأنظمة بدلاً من المستخدمين النهائيين. توسع امتدادات WASI المدمجة للمواضيع والمآخذ وHTTP سيناريوهات النشر ولكن تضيف خطوات تكوين إلى إعداد الوقت الحقيقي وخطوط أنابيب النشر.
wamr هو خيار عملي لمطوري الأنظمة الذين يقبلون الإعداد العملي
wamr هو خيار قادر للمطورين والمهندسين الذين يحتاجون إلى وقت تشغيل WebAssembly مضغوط وقابل للتنبؤ ويشعرون بالراحة مع أدوات البناء والإصدار. يتطلب الإلمام بتدفقات العمل من سطر الأوامر وتكوين وقت التشغيل، لذا قد تجد الفرق التي تبحث عن وقت تشغيل مدفوع بواجهة المستخدم الرسومية أنه أكثر عملية مما يفضلون. موصى به.
المميزات
يتضمن مترجم AOT من wamrc للتنفيذ الأصلي المحسن
يحقق توافق 100% مع مواصفات WebAssembly (تم اجتياز أكثر من 20,000 تأكيد)
إعادة كتابته بلغة Zig لتحسين خصائص أمان الذاكرة مقارنة بلغة C
يدعم اقتراحات SIMD v128 وذاكرة متعددة وذاكرة 64.
العيوب
يتطلب التثبيت عبر ghr أو الملفات التنفيذية معرفة بأسطر الأوامر
موجه للمطورين ومهندسي الأنظمة، وليس لعمليات المستخدم النهائي
تضيف ميزات WASI المتقدمة تعقيدًا في التكوين والنشر
تختلف القوانين الخاصة باستخدام هذا البرنامج من بلد لآخر. نحن لا ننصح باستخدام هذا البرنامج ولا نقر استخدامه إذا كان ذلك مخالفًا لهذه القوانين. قد تحصل Softonic على رسوم إحالة إذا قمت بالنقر على المنتجات المعروضة هنا أو شرائها.