جيكس آر في إم

آلة جايكس البحثية الافتراضية ( Jikes RVM ) هي آلة افتراضية متطورة تُشغّل برامج مكتوبة لمنصة جافا . على عكس معظم آلات جافا الافتراضية الأخرى (JVMs)، فهي مكتوبة بلغة برمجة جافا ، بأسلوب تنفيذ يُعرف باسم "البرمجة الدائرية الفوقية" . وهي برنامج مجاني ومفتوح المصدر، مُرخص بموجب رخصة إكليبس العامة .

تاريخ

  • في نوفمبر 1997، بدأ مشروع هالابينو كمشروع بحث داخلي في مركز أبحاث توماس جيه واتسون التابع لشركة IBM . [ 2 ]
  • في عامي 1999 و2000، نشر باحثون من شركة IBM أوراقًا بحثية تصف جوانب جديدة من Jikes RVM، وتم منح العديد من الجامعات إمكانية الوصول إلى شفرة المصدر .
  • في أكتوبر 2001، تم إصدار Jikes RVM الإصدار 2 كمشروع نموذج مفتوح المصدر بموجب رخصة Common Public License . يدعم هذا الإصدار معماريتي PowerPC و Intel ومجموعة متنوعة من خوارزميات جمع البيانات المهملة .
  • في عام 2002، تم إصدار Jikes RVM 2.2 مع جامعات القمامة الدقيقة التي أعيدت هيكلتها الآن في جامعات إدارة الذاكرة الدقيقة الشائعة.
  • في عام 2004، تم إصدار Jikes RVM 2.4 مع زيادة جزئية في الاستقرار والأداء، مع التركيز بشكل خاص على تشغيل eclipse.
  • في عام 2007، بدأ تطوير Jikes RVM 2.9 مع إعادة هيكلة قاعدة التعليمات البرمجية بشكل مكثف لاستخدام ميزات Java 5.0 واستخدام نظام بناء Apache Ant .
  • في عام 2008، تم إصدار Jikes RVM 3.0 مما يمثل نهاية تطوير الإصدار 2.9 وتحقيق استقرار جديد في قاعدة التعليمات البرمجية.
  • في عام 2009، تم إصدار Jikes RVM 3.1 بموجب رخصة Eclipse العامة (EPL) مع تحسينات كبيرة مقارنة بأداء الإصدار 3.0.1 والتحول إلى الخيوط الأصلية .
  • في عام 2012، فاز برنامج Jikes RVM بجائزة SIGPLAN من مجموعة الاهتمامات الخاصة بلغات البرمجة التابعة لجمعية آلات الحوسبة (ACM) ، وذلك لجودته العالية وتصميمه المعياري. [ 3 ]

بوتستراب

نظرًا لكونها ذات بنية دائرية ، تتطلب Jikes RVM وجود JVM تمهيدي لتشغيلها وإنشاء صورة تمهيدية. الصورة التمهيدية هي عرض للكائنات التي تحتاجها Jikes RVM للتشغيل، والتي يتم إنشاؤها باستخدام تقنية الانعكاس في JVM التمهيدي. ويتولى مُحمِّل صغير مكتوب بلغة C مسؤولية تحميل الصورة التمهيدية أثناء التشغيل.

سحر VM

تُعرف خاصية VM Magic بأنها قدرة المُصرّف على توليد شيفرة برمجية مختلفة لفئة معينة عن الشيفرة الثنائية الموجودة داخل تلك الفئة. تتيح فئات VM Magic الوصول المباشر إلى الذاكرة، وهي عنصر أساسي في أداء مجموعة أدوات إدارة الذاكرة. توجد فئات VM Magic في حزمة org.vmmagic ، وقد أُعيد استخدامها في مشاريع جافا أخرى.

مجموعة أدوات إدارة الذاكرة

مجموعة أدوات إدارة الذاكرة (MMTk) هي مجموعة من أدوات جمع البيانات المهملة الدقيقة التي استُخدمت في Jikes RVM ومشاريع أخرى مثل نظام التشغيل Singularity وبنية اللغة المشتركة المصدرية المشتركة (SSCLI، والتي كانت تُسمى سابقًا Rotor). [ 4 ] وكما هو الحال مع بقية Jikes RVM، فإن التنفيذ مكتوب بلغة Java ، ولكن الاعتماد الرئيسي يكمن في VM Magic.

مكتبات الفئات

يمكن استخدام مكتبات فئات Apache Harmony أو GNU Classpath مع Jikes RVM، مع دعم تجريبي لمكتبة فئات OpenJDK .

المترجمون

يستخدم Jikes RVM مُصرّفًا أساسيًا سريعًا لتوليد التعليمات البرمجية بسرعة لبنية معينة. ثم يُعيد التجميع التكيفي تجميع التعليمات البرمجية باستخدام مُصرّف مُحسِّن مزود بميزات مثل استبدال التعليمات البرمجية على المكدس (OSR). ويعتمد نظام التجميع التكيفي على نموذج تحليل التكلفة والعائد.

وقت التشغيل

يحتوي وقت تشغيل Jikes RVM على العديد من الميزات المبتكرة بما في ذلك آليات القفل السريع، والجدولة التعاونية، ودعم جمع الاستثناءات وإرسالها بسرعة.

المعالجات

يدعم Jikes RVM معمارية معالجات مجموعة التعليمات PowerPC (أو ppc) و IA-32 (أو Intel x86، 32 بت) .

بحث

وبما أنه مشروع بحثي، فإن تركيز Jikes RVM ينصب على البحث في التقنيات الجديدة، كما يتضح من المنشورات العلمية التي أفرزها - أكثر من 220 ورقة بحثية اعتبارًا من عام 2015. [ 5 ] [ 6 ]

كما شارك Jikes RVM في برنامج Google Summer of Code في الأعوام 2007 و2008 و2010 و2011 و2012.

انظر أيضاً

مراجع

  1. "فريق ومساهمو Jikes RVM" .
  2. "الأسئلة الشائعة" .
  3. "2012: آلة جايكس البحثية الافتراضية (RVM) | SIGPLAN" . مؤرشف من الأصل بتاريخ 2013-07-03 . تم الاطلاع عليه بتاريخ 2013-06-21 .
  4. "مقترحات مشروع Jikes RVM لعام 2009" . مؤرشف من الأصل بتاريخ 13 أبريل 2013. تم الاطلاع عليه بتاريخ 23 أبريل 2015 .
  5. "أوراق بحثية حول جيكس آر في إم" .
  6. "مشروع آلة جايكس البحثية الافتراضية: بناء مجتمع بحثي مفتوح المصدر" (ملف PDF) . مجلة أنظمة آي بي إم . 44 (2). 2005.