استخدام ال virtual machine كجهاز اساسي للعمل, هل هو فعال ام لا؟
- mr.ashrafmohamed
- 2014-05-13T18:43:26+00:00
كثيرا ما نعاني من مشاك الويندوز وكثرة تحطيمه واعادة تسطيب النسخ وبعدها كم البرامج التي نحملها وال history وال experience التي تضيع مع النسخة القديمة
يطرح البعض استخدام virtual machine كحل لهذة المشكلة
فهل هذا الحل فعال ام لا؟
وما المتطلبات المفضلة للعمل عليه بشكل لائق وبدون تعقيدات؟
وما افضل البرامج المستخدمة ومميزاتها؟
هناك أكثر من ميزة للعمل علي جهاز وهمي، منها:
القدرة علي العمل علي أنظمة تشغيل لا نريد تنصيبها علي أجهزتنا الشخصية (أو لا نستطيع)، و في نفس الوقت لا يمكننا العمل عليها لأن الأدوات البرمجية التي نحتاجها للقيام بالعمل لا تتوفر أو لا تعمل بشكل مناسب إلا علي ذلك النظام. فلنتخيل أنك تحب الـwindows 8.1 مثلي و تظن أنه أجمل شيء تم اختراعه بعد الفراخ المشوية، و لكنك وجدتَ أحد عملائك يطلب منك العمل علي مشروع معين يستلزم أدوات برمجية لا تعمل إلا علي windows XP، ساعتها إن تجاهلتَ حل العمل علي جهاز وهمي فسيكون لزاماً عليك أن تقوم بتنصيب windows XP علي جهازك الجديد بدلاً من الإصدارة الأحدث ! (في الواقع لا يمكنك ذلك عملياً بسبب الـUEFI و لكنني أفترض القدرة افتراضاَ جدلياً). أو سيكون لزاماً عليك أن تخصص جهازاً آخر لإتمام المهمة، و هو ما قد يكون مناسباً و عملياً و لكني لا أميل إليه؛ بسبب أنني كمطور أعتمد علي جهازي الذي بين يدي لعمل كل شيء و لا أحب التنقل بين أكثر من جهاز (انتبه إلي أن وجود أجهزة أخري للعمل قد يكون أمراً ضرورياً للعمل في بعض الأحيان).
القدرة علي الاستغناء عن الحاسوب بمنتهي السهولة مع الاحتفاظ بكل عملك و إعداداتك كما هي، بينما في حالة الاعتماد علي نظام التشغيل المثبت علي الجهاز نفسه فإنه لا يمكنك نقل نظام التشغيل ببرامجه إلي جهاز جديد، أو علي الأقل لن يكون الأمر بنفس السهولة البالغة؛ حيث أن الأمر في حالة الآلة الوهمية لن يتعدي نقل ملف واحد (هو ملف القرص الصلب الوهمي، مثلاً في حالتي أنا يمكنني نقل الآلة الوهمية التي أعمل عليها بنظام XP، بمجرد نقل ملف XP.VDI، ثم عمل ألة وهمية تعتمد علي ذلك القرص الوهمي في الجهاز الجديد، و هكذا تجد أنك تعود للعمل علي نظام تشغيلك نفسه بكل الإعدادات و البرامج المثبتة في ثوان معدودات).
التحكم التام في بيئة العمل بشكل أبسط بكثير جداً من التحكم في نظام التشغيل المثبت علي الجهاز نفسه، فمثلاً حينما تستخدم أمر nmake في سطر أوامر الـvisual studio تجد نفسك في مطالباً في بعض الأحيان بألا يعمل علي جهازك إلا معالج واحد (صدق أو لا تصدق، و لكن هذا قد يكون ضرورياً لتفادي علة bug معينة توجد في إصدارتي 2005 و 2008 من الـvisual studio !)، و في حالة العمل علي نظام التشغيل المثبت علي الجهاز الحقيقي فستضطر في الغالب إلي إعادة التشغيل و ضبط هذا الأمر من داخل عالم الظلام و الكوابيس BIOS (لو كنت تعمل بنظام BeOS أو haiku فستكفي نقرات من الفأرة لفعل ذلك !)، بينما في حالة الجهاز الوهمي فستكفي نقرات لضبط المسألة و إعادة تشغيل الجهاز الوهمي بمنتهي البساطة.
حماية نظام التشغيل الأساسي من "العك" البالغ (و أعتر عن التعبير العامي و لكنه معبر للغاية)؛ حيث تجد أن أنظمة مثل الـwindows يصير الـregistery الخاص بها في فوضي تامة بعد عمليات التنصيب و إزالة التنصيب الكثيرة التي يقوم بها المبرمج، و بسبب تجربته عملياً لبرمجياته التي يطورها، و الجهاز الوهمي يقدم بيئة آمنة صالحة للتجربة، و بالإمكان عمل أكثر من بيئة وهمية لعمل التجارب التي قد تضر بنظام التشغيل و/أو إعدادات مستخدميه، و لو ضرت التجارب الجهاز الوهمي فإنها لن تضر سوي القرص الوهمي الخاص بذلك الجهاز فقط، و يمكن الاحتياط لهذا عن طريق الاحتفاظ بنسخة من القرص الوهمي قبل إجراء التجارب.
أما عيوب هذا الأمر فمنها بالنسبة لي:
استهلاك الموارد بشدة، و خصوصاً حينما يكون نظامك الأساسي ثقيلاً مثل windows 8، و تقوم بتنصيب نظام آخر ثقيل مثل windows 7 علي جهاز حاسوب متواضع الإمكانيات قليلاً، بل حتي و إن كان النظام الذي ستنصبه علي جهاز وهمي أخف من الأنظمة سالفة الذِكر (مثل توزيعة kubuntu) فربما تحس بثقل الجهاز عند العمل علي أمور عادية، و هو ما سيحيل حياتك إلي كابوس بشع عند محاولة القيام بأمور تستلزم ذاكرة و وقت معالَجة كبيرين. لذلك سيكون لزاماً عليك إما أن تنصب علي الجهاز الوهمي أنظمة تشغيل خفيفة (مثل XP و توزيعات الـlinux الخفيفة)، أو أن تشتري جهازاً أكبر من حيث الذاكرة و أقوي من حيث المعالج.
الأقراص الصلبة الخاصة بالأجهزة الوهمية ستأخذ حيزاً غير صغير من القرص الصلب لجهازك، خصوصاً حينما تكون تلك الأنظمة و/أو البرمجيات التي تستخدمها كبيرة الحجم (تخيل آلة وهمية تعمل بـwindows 8 مع تنصيب visual studio و Microsoft SDK و MS SQL server و ما شابههن من برمجيات عليه!) صحيح أن هذا الأمر يمكن التغلب عليه بمنتهي البساطة عن طريق زيادة الذاكرة (حتي و إن كانت الزيادة عن طريق قرص خارجي). و لكنه يظل عيباً يجب ذِكره.
أنا عن نفسي أعتمد علي نظام التشغيل الأساسي حينما أقوم بتطوير برنامج من برامجي الخاصة، و لكني أفضل التعامل مع الأجهزة الوهمية في الأحيان التي أجد فيها أن المميزات أكبر من العيوب. و الأمر في النهاية يرجع لطبيعة العمل المطلوب القيام به، و لطبيعة المبرمج نفسه و تفضيلاته الشخصية.
أما بخصوص البرمجيات التي يمكن استخدامها لهذا الغرض، فأنا أفضِّل استخدام برنامج Oracle VM virtualbox بحكم المجانية و الاعتياد لا أكثر، بينما يفضل أحد أصدقائي (و هو يعتمد علي الأجهزة الوهمية في عمله بشكل تام كما أخبرني من قبل) برنامج VMware، و بإمكانك تجربة الاثنين لتري أيهما أفضل بالنسبة لك.
لست بحاجة لذلك، فقط قم بتخزين ملفاتك في قرص غير قرص نظام التشغيل، واجعل كل اكوادك على اي private online repository وكذلك ملفاتك المهمه ضعها على dropbox أو اي backup system هكذا ستتجنب اي خسارة لو انفجر الهارديسك مرة واحدة
ال virtual machine ليس حل لمشكلة الcrash ، لأنه يمكن أن يحصل الcrash للنظام الاصلي وترجع لنفس المشكلة
حل مشكلة الcrash هي بمعرفة السبب وحلها، هل هو بسبب مشكلة في الهارديسك، هل هو مشكلة في النظام نفسه، و اذا ظهرت الBlue screen فهناك رقم للمشكلة سوف تجد له حلول في الانترنت متوفره
مجتمع لمناقشة وتبادل الخبرات حول تطوير الويب. ناقش أحدث التقنيات، اللغات، والأدوات في عالم تطوير المواقع والتطبيقات. شارك مشاريعك، اسأل عن نصائح، وتعاون مع مطورين محترفين وهواة.