पैरावर्चुअलाइजेशन

कंप्यूटिंग में, पैरावर्चुअलाइजेशन या पैरा-वर्चुअलाइज़ेशन एक तकनीक है जो आभासी मशीन के लिए सॉफ़्टवेयर इंटरफ़ेस प्रस्तुत करता है जो अंतर्निहित हार्डवेयर-सॉफ़्टवेयर इंटरफ़ेस के समान है, फिर भी सर्वसम नहीं है।

संशोधित इंटरफ़ेस का उद्देश्य अम्यागत के निष्पादन समय के उस भाग को कम करना है जो संचालन करने में प्रयुक्त होता है जो गैर-आभासी परिसर की तुलना में आभासी परिसर में चलाने के लिए काफी अधिक कठिन होता है। पैरावर्चुअलाइज़ेशन विशेष रूप से परिभाषित 'हुक' प्रदान करता है ताकि अम्यागत (एस) और होस्ट को इन कार्यों का अनुरोध करने और स्वीकार करने की अनुमति मिल सके, जो अन्यथा आभासी प्रांत (जहां निष्पादन प्रदर्शन खराब है) में निष्पादित किया जाता है। सफल पैरावर्चुअलाइज्ड प्लेटफॉर्म आभासी मशीन मॉनिटर (वीएमएम) को सरल बना सकता है (आभासी प्रांत से होस्ट डोमेन में महत्वपूर्ण कार्यों के निष्पादन को स्थानांतरित करके), और/या आभासी अम्यागत के अंदर मशीन निष्पादन के समग्र प्रदर्शन में गिरावट को कम कर सकता है।

पैरावर्चुअलाइज़ेशन के लिए अम्यागत प्रचालन तन्त्र को अप्लिकेशन प्रोग्रामिंग अंतरफलक (एपीआई) के लिए स्पष्ट रूप से पोर्टिंग की आवश्यकता होती है - पारंपरिक ओएस वितरण जो पैरावर्चुअलाइज़ेशन-जागरूक नहीं है, पैरावर्चुअलाइज़िंग वीएमएम के शीर्ष पर नहीं चलाया जा सकता है। हालाँकि, ऐसे मामलों में भी जहाँ प्रचालन तन्त्र को संशोधित नहीं किया जा सकता है, ऐसे घटक उपलब्ध हो सकते हैं जो पैरावर्चुअलाइज़ेशन के कई महत्वपूर्ण प्रदर्शन लाभों को सक्षम करते हैं। उदाहरण के लिए, Xen Windows GPLPV प्रोजेक्ट पैरावर्चुअलाइज़ेशन-जागरूक डिवाइस ड्राइवरों की एक किट प्रदान करता है, जो जीएनयू जनरल पब्लिक लाइसेंस की शर्तों के तहत लाइसेंस प्राप्त है, जो कि Xen हाइपरवाइज़र पर चलने वाले Microsoft Windows आभासी अम्यागत में स्थापित करने के लिए अभिप्रेत है। ऐसे अनुप्रयोग पैरावर्चुअल मशीन इंटरफ़ेस परिसर के माध्यम से सुलभ होते हैं। यह कई एन्क्रिप्शन एल्गोरिथम मॉडल में रन-मोड संगतता सुनिश्चित करता है, जिससे पैरावर्चुअल फ्रेमवर्क के भीतर सहज एकीकरण की अनुमति मिलती है।

इतिहास
Paravirtualization पुराने विचार के लिए एक नया शब्द है। आईबीएम के वीएम (प्रचालन तन्त्र) प्रचालन तन्त्र ने 1972 से ऐसी सुविधा की पेशकश की है (और पहले CP-67 के रूप में)। VM दुनिया में, इसे DIAGNOSE कोड नामित किया गया है, क्योंकि यह सामान्य रूप से केवल हार्डवेयर रखरखाव सॉफ़्टवेयर द्वारा उपयोग किए जाने वाले निर्देश कोड का उपयोग करता है और इस प्रकार अपरिभाषित है।

समानताएं वर्कस्टेशन प्रचालन तन्त्र इसके समकक्ष को हाइपरकॉल कहता है। सभी एक ही चीज हैं: नीचे के सूत्र को एक सिस्टम कॉल। ऐसी कॉलों के लिए अम्यागत प्रचालन तन्त्र में समर्थन की आवश्यकता होती है, जिसमें ऐसी कॉल करने के लिए हाइपरविजर-विशिष्ट कोड होना चाहिए।

पैरावर्चुअलाइज़ेशन शब्द का पहली बार उपयोग डेनाली (प्रचालन तन्त्र) आभासी मशीन मैनेजर के सहयोग से शोध साहित्य में किया गया था। इस शब्द का प्रयोग Xen, L4 माइक्रोकर्नेल परिवार, ट्रैंगो आभासी प्रोसेसर, VMware, पवन नदी प्रणाली और एक्स्ट्राटुएम हाइपरविजर का वर्णन करने के लिए भी किया जाता है। ये सभी परियोजनाएं x86 हार्डवेयर पर उच्च प्रदर्शन वाली आभासी मशीनों का समर्थन करने के लिए पैरावर्चुअलाइजेशन तकनीकों का उपयोग या उपयोग कर सकती हैं, जो वास्तविक x86 निर्देश सेट के हार्ड-टू-वर्चुअलाइज भागों को लागू नहीं करती है। एक हाइपरविजर अंतर्निहित कंप्यूटर सिस्टम का वर्चुअलाइजेशन प्रदान करता है। पूर्ण वर्चुअलाइजेशन में, एक अम्यागत प्रचालन तन्त्र एक हाइपरविजर पर असंशोधित चलता है। हालांकि, अम्यागत प्रचालन तन्त्र को हाइपरविजर के साथ संवाद करने से बेहतर प्रदर्शन और दक्षता प्राप्त होती है। अम्यागत प्रचालन तन्त्र को हाइपरविजर को अपना उद्देश्य इंगित करने की अनुमति देकर, आभासी मशीन में चलने पर प्रत्येक बेहतर प्रदर्शन प्राप्त करने में सहयोग कर सकता है। इस प्रकार के संचार को पैरावर्चुअलाइजेशन कहा जाता है।

2005 में, VMware ने अम्यागत प्रचालन तन्त्र और हाइपरविजर के बीच एक संचार तंत्र के रूप में एक पैरावर्चुअलाइज़ेशन इंटरफ़ेस, आभासी मशीन इंटरफ़ेस (VMI) प्रस्तावित किया। यह इंटरफ़ेस पारदर्शी पैरावर्चुअलाइज़ेशन को सक्षम करता है जिसमें प्रचालन तन्त्र का एक एकल बाइनरी संस्करण या तो नेटिव हार्डवेयर पर या पैरावर्चुअलाइज़्ड मोड में हाइपरवाइज़र पर चल सकता है। जैसा कि एएमडी और इंटेल सीपीयू ने अधिक कुशल हार्डवेयर-असिस्टेड वर्चुअलाइजेशन के लिए समर्थन जोड़ा, मानक अप्रचलित हो गया और वीएमआई समर्थन 2.6.37 में लिनक्स कर्नेल से हटा दिया गया और 2011 में वीएमवेयर उत्पादों से। 2008 में, Red Hat ने कर्नेल-आधारित आभासी मशीन और Linux के लिए VirtIO पैरावर्चुअलाइज़ेशन की घोषणा की, Microsoft Windows के लिए VirtIO ड्राइवर भी उपलब्ध है।

2008 में, माइक्रोसॉफ्ट ने हाइपर-वी पैरावर्चुअलाइजेशन की घोषणा की।

लिनक्स पैरावर्चुअलाइजेशन सपोर्ट
बोस्टन, मैसाचुसेट्स में 2006 में USENIX सम्मेलन में, कई Linux विकास विक्रेताओं (IBM, VMware, Xen, और Red Hat सहित) ने paravirtualization के वैकल्पिक रूप पर सहयोग किया, जिसे शुरू में Xen समूह द्वारा विकसित किया गया था, जिसे paravirt-ops कहा जाता है। Paravirt-ops कोड (अक्सर pv-ops के लिए संक्षिप्त) को 2.6.23 संस्करण के रूप में मेनलाइन लिनक्स कर्नेल में शामिल किया गया था, और हाइपरविजर और अम्यागत कर्नेल के बीच एक हाइपरविजर-एग्नोस्टिक इंटरफ़ेस प्रदान करता है। pv-ops अम्यागत कर्नेल के लिए वितरण समर्थन Ubuntu 7.04 और RedHat 9 के साथ शुरू हुआ। किसी भी 2.6.24 या बाद के कर्नेल पर आधारित Xen हाइपरविजर pv-ops अम्यागत का समर्थन करता है, जैसा कि VMware का वर्कस्टेशन उत्पाद संस्करण 6 से शुरू होता है। VirtualBox#Feature set भी संस्करण 5.0 से इसका समर्थन करता है।

यह भी देखें

 * प्रचालन तन्त्र-स्तरीय वर्चुअलाइजेशन
 * एक्सोकर्नेल
 * कर्नेल-आधारित आभासी मशीन
 * तार्किक प्रांत (एलडीओएम)
 * तार्किक विभाजन (LPAR)
 * हाइपरविजर

बाहरी संबंध

 * Anandtech – Hardware Virtualization: the Nuts and Bolts Technical article on paravirtualization