ماهو الفرق بين مشغل ART و Dalvik VM في اندرويد ؟


لا شك أن اندرويد في هذه الفترة تطور كثيراً وحصل على العديد من التعديلات على ميزاته لكن الشيئ الوحيد الذي بقي ثابتاً تقريباً هو المشغل الافتراضي Dalvik VM الذي يشغل تطبيقات جميع إصدارات اندرويد بما فيها الإصدار الأخير اندرويد كيت كات، لكن جوجل ومنذ أكثر من 30 شهراً تعمل على استبداله بمشغل افتراضي آخر باسم ART فما الفرق ما بين هذين الاثنين؟

هذا الأخير اختصار لـ Android Run Time وحسب عملاق البحث على شبكة الانترنت سيكون بأداء أسرع وكفاءة أكبر إلى جانب الاستهلاك الأقل للبطارية وتعطيك جوجل الخيار لتشغيله في كيت كات بدلاً من Dalivk من خيارات المطور Developer Options.


Dalvik Virtual Machine يعمل على مترجم من نوع Just In Time Compiler أي الترجمة الآلية لكن في كل مرة يشغل فيها التطبيق وهذا لايتمتع بالكفاءة الكافية إلا أن هذه العملية لا تحتاج إلى عتاد صلب قوي وتعمل على أنواع مختلفة منه. بينما ART يعمل على ترجمة مسبقة للتطبيقات تدعى بـ Ahead Of Time وتحويلها إلى لغة آلة عند تثبيت التطبيق لأول مرة وهذا بالطبع يختصر كثيراً من زمن تشغيل التطبيقات وكذلك تشغيلها بسرعة أكبر.

للأمانة تم اختبار كل من المشغلين بواسطة تطبيقات الاختبار الشهيرة مثل Linpack For Android، Real Pi، Quadrant Standard، و كذلك AnTuTu Benchmark حيث لم تظهر تفوقاً واضحاً لـ ART بل في بعضها تفوق Dalvik، لكن مع ملاحظة أنها لا تعتبر دقيقة بشكل كبير ولا تعطي معيار واضح لكنها تبقى الوسيلة الوحيدة المتوفرة حتى الآن.