شرح صفوف ومحتوى الفقرة
عندما تقرأ مصطلح «الآلة الافتراضية» في مراجع علوم الحاسوب والبرمجة، ستلاحظ أنه يُطلق على نوعين مختلفين في الغرض ومستوى التجريد: أجهزة النظام الافتراضية (System Virtual Machines) وأجهزة العمليات الافتراضية (Process Virtual Machines). يساعدك فهم هذا التصنيف الثنائي منذ البداية على عدم الخلط بين برامج محاكاة أنظمة التشغيل الكاملة وبين بيئات تشغيل لغات البرمجة.
لتبسيط الفارق بالتشبيه الحياتي: جهاز النظام الافتراضي يشبه «استئجار كرفان سكني متكامل يحتوي على غرف ومطبخ وكهرباء مستقلة لتعيش بداخله حياة كاملة»، بينما جهاز العملية الافتراضي يشبه «مترجماً فورياً يرافقك لمدة عشر دقائق لقراءة وثيقة واحدة ثم ينصرف فور انتهاء قراءتها»:
- 1. أجهزة النظام الافتراضية الكاملة: تحاكي عتاد كمبيوتر فيزيائي كامل من الألف إلى الياء لتسمح لك بتثبيت وتشغيل نظام تشغيل مستقل تماماً بنواته وسطح مكتبه (مثل
VirtualBoxوVMwareوKVM)، وهي محور دراستنا في هذا المسار لبناء خوادم الويب ومختبرات الأمن السيبراني. - 2. أجهزة العمليات والتطبيقات الافتراضية: تُعرف أيضاً باسم (Application Virtual Machines)، وهي بيئات تشغيل برمجية خفيفة لا تنشئ نظام تشغيل جديداً، بل تعمل كعملية عادية داخل نظامك لتشغيل برنامج واحد فقط بشكل مستقل عن نوع الجهاز، وتولد لحظة فتح البرنامج وتختفي فور إغلاقه، ومن أشهر أمثلتها آلة جافا الافتراضية (Java Virtual Machine —
JVM) وبيئة تشغيل.NET CLR.
نص
# 1. System VM (Emulates Full Hardware -> Boots Complete Guest OS):
[Physical Host] -> [Hypervisor: VirtualBox] -> [Full Ubuntu Linux OS + Kernel + Web Server]
# 2. Process VM (Runs Inside Host OS -> Executes Single Portable App Process):
[Host OS] -> [Process VM: Java JVM] -> [Runs App.jar ("Write Once, Run Anywhere")]