यह आपके वर्चुअलाइजेशन सॉफ्टवेयर पर निर्भर करता है। मूल रूप से आपके पास तीन विकल्प हैं:
- सीपीयू सहित पूरे पीसी का अनुकरण करें।
- मेजबान के हार्डवेयर का उपयोग करते हुए, सॉफ़्टवेयर को चलाएं, लेकिन कुछ सिस्टम कॉल और निर्देशों को रोकें।
- सॉफ़्टवेयर को संशोधित करें ताकि यह मेजबान हार्डवेयर पर चलता है, लेकिन जो निर्देश 2 द्वारा इंटरसेप्ट किए जाएंगे) अब अन्य रूटीन द्वारा प्रतिस्थापित किए जाते हैं।
तीनों काम करते हैं। तीनों उपयोग में हैं। तीनों में अलग-अलग प्रदर्शन विशेषताएं हैं।
1) अनुकरण करना
यह हमेशा सबसे धीमा विकल्प होगा। इसके दो फायदे हैं:
- आप एक पूरी तरह से अलग होस्ट (जैसे AMD64 पर ARM आधारित कंप्यूटर का अनुकरण कर सकते हैं) का अनुकरण कर सकते हैं।
- आपको किसी हार्डवेयर समर्थन की आवश्यकता नहीं है।
2) अवरोधक प्रणाली कॉल
यह उत्तर अधिकतर AMD64 आधारित है। एक आधुनिक x86 CPU में विभिन्न अनुमतियों के साथ कई स्तर होते हैं। इन्हें कहा जाता है के छल्ले । VM सॉफ़्टवेयर रिंग 0 (सबसे अधिक अनुमतियों वाली रिंग) पर अधिकार कर लेता है और कंप्यूटर पर कुछ भी करने का अधिकार प्राप्त करता है। कंप्यूटर पर सॉफ्टवेयर (होस्ट और वीएम दोनों) इस पर ध्यान नहीं देते हैं। इन अधिकारों का उपयोग करना यह सुनिश्चित करता है कि मल्टीपल ओएस एक-दूसरे के साथ हस्तक्षेप न करें।
परिणामस्वरूप नियमित कोड पूर्ण गति से चलता है (dnetc परीक्षण के परिणामस्वरूप vm में लगभग 99% गति होती है)। कोड जो सिस्टम कॉल करता है वह इंटरसेप्ट और संशोधित हो जाता है, और इस प्रकार बहुत धीमा होता है। आमतौर पर इसका शुद्ध परिणाम कुछ प्रतिशत की गति हानि है।
3) संशोधित कोड
सिस्टम कॉल को वास्तविक समय में इंटरसेप्ट करने के बजाय आप पहले से सॉफ्टवेयर को संशोधित कर सकते हैं। इस तरह आपका कोड थोड़ा तेज़ हो सकता है, लेकिन आपको पहले से सॉफ़्टवेयर को संशोधित करने की आवश्यकता है।
Especially I am talking about QEMU and virtualbox, how are they?
मुझे एक दोस्त मिला जो एक प्रोग्रामर है। उसने QEMU के कोड को देखा। अनुशंसित सलाह इसे छूने के लिए नहीं है। कभी। 10 फीट के पोल से भी नहीं। QEMU बॉक्स कॉन्फ़िगरेशन से बाहर काम करता है, लेकिन यदि आप डिफ़ॉल्ट सेटिंग्स का उपयोग नहीं करते हैं, तो यह अक्सर विफल रहता है। यह संसाधनों को आवंटित करता है और कभी भी जांच नहीं करता है कि क्या सफल हुआ ... मैं आगे बढ़ सकता था, लेकिन कम यह बेहतर उल्लेख किया गया है।
वर्चुअलबॉक्स: मैंने एक बार वर्चुअलबॉक्स का इस्तेमाल किया था। इसने काम कर दिया। इसके विंडोज़ संस्करण में एक अच्छा समझने योग्य इंटरफ़ेस था। मैंने किसी प्रदर्शन का परीक्षण नहीं किया और न ही मैंने कोई खेल खेला।
Will it run games without problems?
मेरे द्वारा चलाए जा रहे एकमात्र गेम Vmware (खिलाड़ी) के अंतर्गत हैं। 2 डी गेम के लिए यह काफी अच्छा था। 3 डी गेम आमतौर पर मेरे कंप्यूटर (Vm और होस्ट दोनों) को क्रैश करते हैं।