قائمة الآلات الافتراضية لجافا
تُقدّم هذه المقالة قوائم غير شاملة لآلات جافا الافتراضية (JVMs) الخاصة بـ Java SE . ولا تشمل جميع مُورّدي Java ME . تجدر الإشارة إلى أن Jakarta EE تعمل على آلة جافا الافتراضية القياسية الخاصة بـ Java SE، ولكن بعض المُورّدين مُتخصّصون في توفير آلة جافا افتراضية مُعدّلة ومُحسّنة لتطبيقات المؤسسات. يُجرى جزء كبير من تطوير جافا على أنظمة Windows و Solaris و Linux و FreeBSD ، باستخدام آلات جافا الافتراضية الخاصة بـ Oracle بشكل أساسي . يُرجى ملاحظة التعقيد الإضافي الناتج عن وجود إصدارات 32 بت و 64 بت مُختلفة .
يُعد OpenJDK HotSpot هو التطبيق المرجعي الأساسي لـ Java VM ، والذي أنتجته شركة Oracle Corporation والعديد من الشركات الكبيرة والمتوسطة الحجم الأخرى (مثل IBM و Redhat و Microsoft و Azul و SAP ).
تطبيقات مجانية ومفتوحة المصدر
| اسم | حالة | إصدارات جافا (من ... آخر إصدار معروف) | وصف مختصر | المنصات المدعومة | جمع القمامة (GC) | وضع التنفيذ | مترجمات JIT | حالة ترخيص TCK |
|---|---|---|---|---|---|---|---|---|
| نشط / مُحافظ عليه | ||||||||
| باربار في إم (الاسم الرمزي واحد) | نشيط | 8 … 8 [ 1 ] | يترجم بايت كود جافا إلى كود سي؛ يستخدم بواسطة كود نيم ون . | أنظمة التشغيل iOS، وAndroid، وأجهزة سطح المكتب، وتطبيقات UWP / التطبيقات الأصلية عبر سلسلة الأدوات الأصلية. | Boehm GC (محافظ)، Simple Mark & Sweep متوفر. | AOT (الترجمة الصوتية) | مترجم لغة C | لا يوجد TCK. (مصادر المشروع / الاسم الرمزي واحد). |
| SubstrateVM (يستخدمه GraalVM JDK) | نشيط | 1.8.0_212 … 25 | آلة افتراضية متعددة اللغات تعتمد على HotSpot/OpenJDK؛ تدعم الصور الأصلية وTruffle متعدد اللغات. | لينكس (x86_64، aarch64)، ماك أو إس، ويندوز. | G1، Serial، Epsilon (HotSpot GCs). | مختلط / هجوم العمالقة | C1/C2 JIT، Graal JIT (الصورة الأصلية) | تختلف شهادة TCK باختلاف الموزع. |
| نقطة اتصال | نشيط | 1 … 25 | تطبيق OpenJDK VM المستخدم على نطاق واسع (Oracle / OpenJDK HotSpot). | متعدد المنصات: ويندوز، لينكس، ماك أو إس؛ مجموعات تعليمات المعالج الأساسية: x86-64 و AArch64. | تسلسلي، متوازي، G1، إبسيلون (E)، شيناندواه، جينز جي سي، جينشين المزيد... | مختلط (تفسير + ترجمة فورية) | مُجمّعات C1/C2 (Graal اختياري) | نعم (الآلة الافتراضية المرجعية في OpenJDK). |
| OpenJ9 | نشيط | 8 … 25 [ 2 ] | آلة افتراضية مفتوحة المصدر تعتمد على معالج IBM J9 (Eclipse OpenJ9). مُحسَّنة للعمل على الحوسبة السحابية/الذاكرة. | لينكس (x86_64، ppc64le، s390x، aarch64)، ويندوز، AIX. | Gencon / Generational Concurrent (افتراضي)، متوازن، Metronome، OptThruput. | مختلط (تفسير + ترجمة فورية + ترجمة آلية) | OpenJ9 JIT (المترجم المُحسِّن) | المصدر مفتوح؛ يعتمد TCK الثنائي على الموزع (على سبيل المثال، IBM Semeru). |
| IKVM | نشط (فروع المجتمع) | 1.4 … 8 | جافا على .NET / Mono؛ تحويل البايت كود إلى .NET والتوافق البيني. | يعمل على بيئة تشغيل .NET. | CLR GC (يعتمد على .NET GC الأساسي). | JIT / AOT | CLR JIT (توليد الكود بواسطة وقت تشغيل المضيف) | لا يوجد اختبار TCK. |
| جيكس آر في إم | نشط (بحثي) | 6 … 6 | Jikes Research VM — جهاز افتراضي لأبحاث الدوائر المتكاملة. | نظام التشغيل IA-32 Linux ونظام التشغيل PowerPC 64 Linux (تاريخيًا). | MMTk (مجموعة أدوات إدارة الذاكرة)؛ جامعات معيارية. | JIT فقط | أساسيات تحسين المترجمات | لا يوجد اختبار TCK. (الدوري الإنجليزي الممتاز). |
| leJOS | نشط (الروبوتات) | 1.5 … 1.6 | بيئة جافا / البرامج الثابتة للروبوتات لـ Lego Mindstorms RCX/NXT/EV3. | يعمل على عائلات أجهزة LEGO Mindstorms؛ البرامج الثابتة المدمجة. | جهاز GC صغير الحجم (وضع علامة ومسح). | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| ماكسين | نشط (بحثي) | 7 u6 … 8 u222 [ 3 ] | آلة بحثية ميتا-دائرية من مختبرات أوراكل / جامعة مانشستر. | x86_64 (Linux/macOS)، AArch64 (Linux)، RISC-V التجريبي. | ماكسين هيب (كومة ومجمعات مكتوبة بلغة جافا). | مختلط (تفسير + ترجمة فورية) | مستويات البحث في الوقت المناسب | لا يوجد مشروع بحثي (TCK). |
| غير نشط / مؤرشف / صيانة | ||||||||
| الكاكاو | غير نشط / صيانة | 1.5 … 6 | آلة افتراضية تعتمد على JIT؛ تستخدم تاريخياً مع GNU Classpath/OpenJDK. | منافذ تاريخية متعددة المعماريات: لينكس، ماك أو إس، إيه آر إم، وإكس 86. | بوهم جي سي (نموذجي/تاريخي). | نظام الإنتاج في الوقت المناسب (JIT) | منصة JIT | لا يوجد اختبار TCK. |
| تناغم أباتشي | غير نشط (تقاعد عام 2011) | 5 … 6 | بديل OpenJDK في بيئة نظيفة (DRLVM)؛ تم إيقافه. | العمل المستهدف على منصات JVM المتعددة (منافذ Linux وWindows وmacOS تاريخيًا). | النسخ الجيني للأجيال (العلامات المضغوطة / النسخ). | مختلط (تفسير + ترجمة فورية) | DRLVM JIT | لا يوجد اختبار TCK. |
| قهوة | غير نشط | 1.2 … 1.4 | تطبيق JVM في بيئة نظيفة (تاريخي). | آلة افتراضية محمولة مبنية على لغة C؛ تتوفر إصدارات للعديد من منصات POSIX. | المحافظة / مارك-سويب (متغيرات كافيه جي سي). | مختلط (تفسير/إنتاج فوري) | منصة JIT | لا يوجد اختبار TCK. |
| مترجم GNU للغة جافا (GCJ) | غير نشط | 1.4 … 1.5 | تمت إزالة مُترجم جافا المُسبق في GCC. | استهدف تاريخياً العديد من أنظمة يونكس/وحدات المعالجة المركزية. | بوهم جي سي (الموانئ التاريخية). | هجوم العمالقة | مولد الكود الأصلي (GCC Backend) | لا يوجد اختبار TCK. |
| JamVM | تحديثات غير نشطة / نادرة | 5 … 8 | JVM صغير الحجم وقابل للتضمين، وغالبًا ما يستخدم مع GNU Classpath أو OpenJDK. | متعدد المنصات (لينكس، بي إس دي، ماك أو إس). | مارك آند سويب (مدمج). | مترجم فوري / فريق الترجمة الفورية | JIT اختياري | لا يوجد اختبار TCK. |
| جوب | غير نشط/أكاديمي | 1.1 … 1.1 | JVM للأجهزة لأنظمة الوقت الحقيقي المدمجة. | أجهزة مخصصة (عائلة معالجات JOP / أهداف FPGA / ASIC). | جمع البيانات المهملة بمساعدة الأجهزة (في الوقت الحقيقي). | الأجهزة (التنفيذ) | غير متوفر | لا يوجد اختبار TCK. |
| عصير | غير نشط | 1.1 … 1.1 | جافا التجريبية ME JVM (نظام التشغيل NUXI). | المنصة: هدف مضمن متخصص (NUXI/أجهزة تجريبية). | مجهول. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| كوكب المشتري | غير نشط | 1.4 … 1.4 | ابحث في JVM باستخدام Boehm GC و GNU Classpath. | تاريخياً، تم توثيق منافذ Linux/x86. | بوهم جي سي. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| ميكا في إم | غير نشط | 1.3 … 1.4 | JVM المدمج (خليفة وونكا). | الأهداف المدمجة/إنترنت الأشياء (البرامج الثابتة الخاصة بالمنصة). | جهاز كروماتوغرافيا غازية صغير الحجم. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| NanoVM | غير نشط | 1 … 1 | آلة جافا افتراضية صغيرة لـ Atmel AVR (روبوت أسورو). | مكونات جهاز التحكم الدقيق Atmel AVR (Asuro). | جمع البيانات المهملة البسيط. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| SableVM | غير نشط | 1.3 … 1.5 | مترجم فوري متنقل ذو توجه بحثي. | أنظمة شبيهة بنظام يونكس متعددة المنصات وخوادم بحثية. | نسخ GC. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| آلة افتراضية سكواك | غير نشط | 1.1 … 1.1 | آلة جافا ME الافتراضية الصغيرة من صن للأجهزة المدمجة (Sun SPOT). | منصات أجهزة Sun SPOT / الأجهزة المدمجة الصغيرة. | إيقاف عملية جمع البيانات المهملة مؤقتًا (مناسب للأنظمة المدمجة). | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| سوبر وابا | غير نشط | 1.2 … 1.2 | آلة افتراضية شبيهة بجافا للأجهزة المحمولة؛ خلفتها شركة توتال كروس. | كانت الأجهزة المدمجة/المحمولة هي الأهداف التاريخية. | علامة-مسح. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| تاكاتوكا | غير نشط/مؤرشف | 1.1 … 1.1 | JVM لأجهزة الاستشعار اللاسلكية (بتنسيق Tuk المضغوط). | منصات الاستشعار عن بعد (أجهزة تشبه TinyOS / ذات موارد محدودة). | مجهول. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| TinyVM | غير نشط | 1 … 1 | برنامج VM صغير لاستبدال RCX. | أهداف الأجهزة المدمجة الشبيهة بـ RCX. | جهاز كروماتوغرافيا غازية صغير الحجم. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| VMKit | غير نشط / مؤرشف | 1.4 … 1.5 | ركيزة الآلة الافتراضية القائمة على LLVM (مؤرشفة). | يعمل عبر منصات متعددة من خلال واجهات LLVM الخلفية (Linux/x86_64 وما إلى ذلك). | MMTk. | نظام الإنتاج في الوقت المناسب (JIT) | الواجهة الخلفية LLVM | لا يوجد اختبار TCK. |
| وونكا في إم | غير نشط | 1.3 … 1.4 | آلة ونكا الافتراضية المدمجة (أكونيا). | الأجهزة المدمجة / اللوحات المتخصصة (التاريخية). | الجيل GC. | مترجم | غير متوفر | لا يوجد اختبار TCK. |
| أنظمة تشغيل جافا | ||||||||
| JX | مستوى نظام التشغيل (بحث) | غير متوفر | نظام تشغيل جافا (جامعة إرلانجن). | الآلات الافتراضية على مستوى نظام التشغيل (منصات البحث). | GC دقيق. | مختلط (AOT/JIT) | AOT/JIT | لا يوجد اختبار TCK. |
| جافا أو إس | على مستوى نظام التشغيل (القديم) | غير متوفر | نظام تشغيل أصلي قائم على لغة جافا من شركة صن مايكروسيستمز لأجهزة الكمبيوتر الشبكية (NCs) والأجهزة المدمجة. | أجهزة الكمبيوتر الشبكية المخصصة (NCs)، والأنظمة المدمجة. | GC الكلاسيكي (علامة ومسح/مدمج). | مختلط (مترجم فوري/ترجمة فورية) | ستاندرد صن جيه آي تي | لا يوجد اختبار TCK. |
تطبيقات خاصة
نشيط
- Azul Platform Prime - آلة افتراضية Java عالية الأداء ومتوافقة تمامًا تعتمد على OpenJDK وتستخدم جامع القمامة C4 من Azul Systems ومترجم Falcon JIT.
- JamaicaVM (aicas) - آلة جافا افتراضية تعمل في الوقت الحقيقي للأنظمة المدمجة.
غير نشط
- Excelsior JET – تطبيق Java SE مرخص مع مترجم AOT لأنظمة Windows و OS X و Linux على معالجات Intel x86 و Linux على معالجات ARM 32 بت .
- Jinitiator – تم تطويره بواسطة Oracle قبل استحواذها على Sun. تم تصميمه لتحسين دعم Oracle Forms في مواقع الويب.
- JRockit (أصلاً من Appeal Virtual Machines ) - استحوذت عليها شركة Oracle لأنظمة Linux وWindows وSolaris.
- وقت تشغيل نظام التشغيل Mac لـ Java (MRJ).
- آلة جافا الافتراضية من مايكروسوفت – تم إيقافها في عام 2001.
آلات جافا الافتراضية الخاصة الأقل شهرة
- كان برنامج Blackdown Java عبارة عن نسخة مرخصة لنظام Linux من تطبيق SunSoft المرجعي. وقد توقف تطويره في عام 2007، بعد توفر OpenJDK .
- Sun CVM - CVM تعني في الأصل "آلة جافا الافتراضية المضغوطة".
- Gemstone – تم تعديله ليتوافق مع ميزات Java EE (نظام إدارة قواعد البيانات للتطبيقات).
- النية (مجموعة تاو).
- PreonVM – آلة افتراضية جافا للأنظمة المدمجة والأجهزة الصغيرة ذات الموارد المحدودة.
انظر أيضاً
مراجع
روابط خارجية
فئات :
- برنامج منصة جافا
- آلة جافا الافتراضية
- قوائم البرامج
