क्या एक ही समय में दो OS का दोहरी बूट करना संभव है?


36

क्या एक ही समय में दो OS का दोहरी बूट करना संभव है?

उदाहरण के लिए : मैं वर्तमान में दोहरी बूटिंग उबंटू 11.04 और विंडोज 7. उबंटू एक सिंगल 500 जीबी एचडीडी पर चल रहा हूं, विंडोज 7 1 टीबी RAID 1 दर्पण पर चल रहा है। दो ओएस के बीच स्विच करने के लिए, एक रिबूट की आवश्यकता होती है। क्या रिबूट के बिना दो ओएस के बीच स्विच करना संभव है?

नोट : मैं VirtualBox और VMWare प्लेयर की क्षमताओं से पूरी तरह अवगत हूं - मैं दोनों का उपयोग करता हूं। कृपया जवाब न दें "वर्चुअलाइजेशन का उपयोग करें!"

संपादित करें: यदि यह संभव नहीं है तो क्या आप साझा कर सकते हैं कि यह क्यों संभव नहीं है? मेरे लिए, ऐसा नहीं लगता कि यह मुश्किल होगा। ध्यान रखें कि मेरी दृष्टि ज्ञान से रहित है!


विभाजित स्मृति के साथ एक मेनफ्रेम पर ...
फ़ास्को लैब्स

जवाबों:


36

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


वर्चुअलाइजेशन एप्लिकेशन सर्वसम्मति लगती है। क्या आपके पास कोई मुफ्त या खुला स्रोत विकल्प हैं जो आप सुझाएंगे?
जेम्स हिल

2
यह वास्तव में इस बात पर निर्भर करता है कि आप क्या करने की कोशिश कर रहे हैं क्योंकि कुछ वीएम ऐप्स दूसरों की तुलना में कुछ चीजों में बेहतर हैं, लेकिन सामान्य तौर पर: अपना मुख्य डिफ़ॉल्ट ओएस चुनें (यानी: बूट टू उबंटू या विंडोज) और फिर वर्चुअलबॉक्स, वीएम प्लेयर (मेरे दो) इंस्टॉल करें faves) या आपका पसंदीदा VM ऐप फिर उस वातावरण में अन्य OS को एक वर्चुअल मशीन के रूप में स्थापित करता है।
Linker3000

आप कॉलिनक्स के आधार पर एक ubuntu distro बना सकते हैं। कॉलिनक्स विंडोज़ पर एक प्रक्रिया के रूप में लिनक्स कर्नेल चलाता है, इसलिए यह वास्तव में वर्चुअलाइजेशन नहीं है। एक अर्थ में, जो मूल प्रश्न पूछा गया है वह संभव है, यह अभी तक नहीं किया गया है।
जे। आर। विरेन

हालांकि, कुछ को ऑपरेटिंग सिस्टम पर चलाने के लिए पोर्ट किया गया है, जैसा कि वास्तविक हार्डवेयर के विपरीत है - UserModeLinux एकदम सही है। colinux (के रूप में @Jay ने उल्लेख किया) एक ऑपरेटिंग सिस्टम जा रहा है एक और करने के लिए "पोर्टेड" का एक और उदाहरण है।
new123456

15

आप हाइपर-वी और एक्सएन (तथाकथित "नंगे-धातु" हाइपरविजर्स) को खारिज करते हुए प्रतीत होते हैं, भले ही वे वही हों जो आप के लिए पूछ रहे हों। हां, यह वर्चुअलाइजेशन है, लेकिन उसी तरह से नहीं जैसा कि वर्चुअलबॉक्स काम करता है।

वर्चुअलबॉक्स की तरह कुछ कल्पना करें इसका अपना ऑपरेटिंग सिस्टम था, इसलिए आप एक छोटे वर्चुअलबॉक्स OS को स्थापित कर सकते थे, और फिर वर्चुअलबॉक्स ओएस के शीर्ष पर वर्चुअल मशीन के रूप में विंडोज और उबंटू को साइड में चला सकते थे। ठीक है, यह अनिवार्य रूप से हाइपर- V या Xen है। यह हार्डवेयर और अतिथि ऑपरेटिंग सिस्टम के बीच एक पतली वर्चुअलाइजेशन परत है, और यह उतना ही करीब है जितना कि आप मौजूदा हार्डवेयर और मौजूदा ऑपरेटिंग सिस्टम के साथ सीधे उन्हें साइड से चला सकते हैं।

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

Xen और हाइपर- V दोनों ही उबंटू और विंडोज को गेस्ट ऑपरेटिंग सिस्टम के रूप में चलाएंगे, हालाँकि यह एक समर्थित कॉन्फ़िगरेशन नहीं हो सकता है। Xen अधिक Linuxy है और हाइपर- V एक MS उत्पाद है, इसलिए मैं सुझाव दूंगा कि आप जो भी OS के साथ अधिक आरामदायक हों, उसके आधार पर हाइपरविजर चुनें।


8

निकटतम चीज़ जो आप कर सकते हैं ... हाइबरनेशन का उपयोग करना है। दुर्भाग्य से, ऑपरेटिंग सिस्टम एक-दूसरे के लिए पर्याप्त विदेशी हैं कि वर्चुअलाइजेशन को लागू किए बिना दोनों ओएस के लिए एक ही समय में चलने का कोई रास्ता नहीं है। ईमानदारी से, वर्चुअलाइजेशन उतना बुरा नहीं है जितना आप अब सोचते हैं ... खासकर जब आप वर्चुअलाइजेशन प्लेटफॉर्म का उपयोग कर रहे हैं जो "वीटी" एक्सटेंशन का समर्थन करता है। अतिथि OSes को सीधे हार्डवेयर के साथ संवाद करने की क्षमता मिलती है, और बहुत बेहतर मेमोरी मैपिंग और ऐसी है। मैंने वास्तव में एक अतिथि ओएस को सीधे एसएसडी पर स्थापित किया है ... और यह होस्ट ओएस की तुलना में तेजी से चला।


मुझे वर्चुअलाइजेशन से कोई समस्या नहीं है, मैं अपने पास मौजूद हर कंप्यूटर पर वर्चुअलबॉक्स का उपयोग करता हूं। क्या आप वीटी एक्सटेंशन की व्याख्या कर सकते हैं जिसका आपने थोड़ा और अधिक उल्लेख किया है? FYI करें - यह घरेलू उपयोग के लिए है इसलिए मैं इसे करने का एक सस्ता (पढ़ें: मुक्त / खुला स्रोत) तरीका ढूंढ रहा हूं।
जेम्स हिल

VT = हार्डवेयर वर्चुअलाइजेशन। मूल रूप से, CPU में कुछ अतिरिक्त एक्सटेंशन होते हैं (कभी-कभी इसे BIOS में सक्षम करने की आवश्यकता होती है) जो समानांतर में OSes को चलाने के लिए डिज़ाइन किया गया है। वर्चुअलबॉक्स यह कर सकता है ... लेकिन अगर आप सॉफ्टवेयर वर्चुअलाइजेशन के साथ फंस गए हैं तो यह अच्छा प्रदर्शन नहीं करेगा। कभी-कभी वीटी-एक्स, वीटी, एएमडी-वी, हार्डवेयर वर्चुअलाइजेशन या अतिरिक्त नामों के असंख्य कहा जाता है।
theCompWiz

क्या VMWare में यह "VT" एक्सटेंशन प्राणी है जिसकी आप बात करते हैं? यदि हां, तो क्या इसे स्पष्ट रूप से सक्षम करने की आवश्यकता है?
मास्टरमैटिक

VT एक प्रोसेसर फीचर है। यह मौसम की बात है या नहीं आपके सीपीयू में बिट्स का निर्माण किया गया है या नहीं ... और यह भी कि मदरबोर्ड के पास इसके लिए समर्थन है या नहीं। (प्रोसेसर एक्सटेंशन को कई BIOS में अक्षम किया जा सकता है) आमतौर पर इसे डिफ़ॉल्ट रूप से सक्षम किया जाता है ... लेकिन अक्षम किया जा सकता है। मेरे एचपी लैपटॉप ने इसे बंद कर दिया था ... लेकिन मेरे सुपरमाइक्रो सर्वर ने इसे चालू कर दिया है।
theCompWiz

7

यहाँ सरल, संक्षिप्त कारण है 'नहीं': क्या सॉफ्टवेयर आपके हार्डवेयर को नियंत्रित करेगा?

यदि OS 1 ऐसा करता है, तो आप OS 2 नहीं चला रहे हैं। यदि OS 2 ऐसा करता है, तो आप OS 1 नहीं चला रहे हैं। यदि वे दोनों ऐसा करते हैं, तो फिर कुछ अन्य सॉफ्टवेयरों को भौतिक हार्डवेयर तक उनकी साझा पहुंच को ध्यान में रखना होगा। , और यह वर्चुअलाइजेशन है (जो आपने खारिज किया था)।


8
जब तक OS 1 OS / 2 नहीं है। फिर आपका रनिंग ओएस / 2 ओएस 1 के रूप में: डी
केनेथ कोचरन

यह सिर्फ स्पष्ट है ... एक कंपनी द्वारा बनाए गए एक साफ-सुथरे ऑपरेटिंग सिस्टम को याद करते हुए, जो गीले पेपर बैग से बाहर निकलने के रास्ते का विपणन नहीं कर सकता है।
फियास्को लैब्स

2

दिमाग में आने वाली चीजें हैं:
- मेमोरी मैनेजमेंट (रैम और कैश)
- प्रोसेस मैनेजमेंट (प्रोसेस थ्रेड रनिंग)

तो आप शायद दो OSs के बीच स्मृति के उपयोग और प्रक्रियाओं के बीच की दौड़ में एक आदमी की आवश्यकता होगी।

यह एक और ओएस / फर्मवेयर होगा।
इसलिए अगर किसी ने इसे लागू किया है तो ओएस इसे लागू करेगा, आप एक साथ चलने वाले 2 ओएस के बजाय 3 के साथ समाप्त हो सकते हैं

संपादित-
जोड़ा जा रहा है क्या linker3000 लिखा है: बंदरगाहों के प्रबंध

यह 'मैन इन द मिड' अनिवार्य रूप से आपका होस्ट ओएस बन जाएगा और दूसरे ओएस को वर्चुअलाइज्ड कर दिया जाएगा, जिससे आपको पहले से पता चल जाएगा कि आप क्या हल कर रहे हैं


2

सभी ओएस मैं कंप्यूटर हार्डवेयर के कुल नियंत्रण की मांग से अवगत हूं।

यह सैद्धांतिक रूप से संभव है। दोनों ओएस के लिए डिज़ाइन किया जाना चाहिए:

  • एक मास्टर (कुल हार्डवेयर नियंत्रण) और एक दास (मास्टर ओएस से संसाधनों का अनुरोध) दोनों के रूप में चलाएं
  • दूसरे OS के अनुरोध पर हार्डवेयर का नियंत्रण पुनः जारी करें

यदि ये दोनों स्थितियां पूरी हो जाती हैं, तो बिना किसी प्रकार के वर्चुअलाइजेशन के दो ओएस एक साथ चलाना संभव होगा। यह सहकारी मल्टीटास्किंग का उपयोग करके दो OS के समान होगा । बेशक, सहकारी मल्टीटास्किंग सभी को छोड़ दिया गया है, लेकिन खराब नियंत्रण वाले अनुप्रयोगों के मुद्दे के कारण इसे छोड़ दिया गया है। शायद दो ठीक से लिखा OS अच्छा खेलेंगे। तो फिर क्या प्रोत्साहन होगा?


1

मुझे "क्यों" भाग को संबोधित करने दें।

आधुनिक ओएस के कारणों में से एक सिस्टम पर एक ही समय में कई कार्यक्रमों (प्रक्रियाओं) को चलाने की अनुमति देना है। यदि आप इसे सुरक्षित रूप से करना चाहते हैं, तो निम्नलिखित होने चाहिए:

  • आप शायद (जब तक कि आपकी कोई विशेष आवश्यकता न हो) सिस्टम में रैम को एक निश्चित फैशन में विभाजित नहीं करना चाहते हैं - उदाहरण के लिए 256MB प्रति प्रक्रिया तय की गई है - आपको 2GB प्रणाली में 8 प्रक्रियाओं तक सीमित करता है। आप प्रत्येक प्रक्रिया को स्मृति के लिए "पूछने" में सक्षम होना चाहते हैं और जब यह किया जाता है तो इसे वापस कर सकते हैं।

  • तुम भी उपकरणों के बीच एक निश्चित फैशन में I / O उपकरणों को विभाजित नहीं करना चाहते हैं। आमतौर पर आप कुछ या सभी हार्डवेयर चाहते हैं, जैसे मेमोरी एक साझा संसाधन हो, या कम से कम केवल विशिष्ट समय पर विशिष्ट प्रक्रियाओं के लिए अस्थायी रूप से अनन्य हो। इसके लिए आवश्यक है कि सभी प्रक्रियाएं I / O को अपने दम पर करने की कोशिश न करें, लेकिन I / O को शेड्यूल करने और समन्वय करने के लिए "कुछ करें"। शेड्यूलिंग इसलिए महत्वपूर्ण है क्योंकि अधिकांश I / O CPU की तुलना में बहुत धीमा है, इसलिए आप CPU को अन्य प्रक्रियाओं के लिए काम कर सकते हैं जबकि यह I-O पर भी सिंगल-कोर सिस्टम पर प्रतीक्षा कर रहा है।

उपरोक्त सही करने के लिए, किसी को कई सीपीयू हार्डवेयर सुविधाओं का लाभ उठाने की आवश्यकता होती है। इनमें से एक MMU है, दूसरा संरक्षित मोड है। क्या दो OS दो या दो से अधिक OSes चलाने के लिए सहकारी रूप से इन हार्डवेयर विशेषताओं को साझा कर सकते हैं?

ज़रूर, लेकिन हार्डवेयर में ऐसा कुछ भी नहीं है जो एक OS को दूसरे OSes मेमोरी पर स्टंपिंग करने से रोक सके। यदि CPU कर्नेल मोड में है (इसमें केवल एक कर्नेल मोड है), कोई भी कोड कुछ भी कर सकता है। एक ओएस से कोड या दूसरे ओएस के डेटा को चलाने के लिए यह 100% संभव है। और हम जानते हैं कि ऑपरेटिंग सिस्टम की अतीत में कमजोरियां रही हैं और भविष्य में और अधिक होंगी। इसलिए यह सुरक्षा के लिए बहुत बुरा है।

अब, यदि आप इस पर एक और "परत" लगा सकते हैं और कई ओएस के लिए हार्डवेयर समर्थन की आवश्यकता है, तो क्या यह अच्छा नहीं होगा? ठीक ऐसा ही हार्डवेयर वर्चुअलाइजेशन की सुविधाएँ करती हैं, वे कई चलने वाले OSes के बीच एक हार्डवेयर अवरोध डालती हैं, और उनके लिए एक उच्च-स्तरीय "इंटरफ़ेस" होता है, जिसे हाइपरवाइज़र कहा जाता है। आपके पास केवल एक हाइपरविजर हो सकता है। और हाँ, OS के तहत चलने वाली प्रक्रियाओं को I / O करने के लिए तीन परतों से गुजरना होगा (प्रक्रिया - स्थानीय कर्नेल - हाइपरवाइज़र)


0

मुझे पता है कि आपने कोई वर्चुअलाइजेशन नहीं कहा है, लेकिन एमएस हाइपर वी सर्वर जैसा कुछ आपकी आवश्यकताओं के अनुरूप हो सकता है


हाइपर- V को सर्वर के रूप में कार्य करने के लिए दूसरी मशीन की आवश्यकता होगी। अगर मेरे पास एक दूसरी मशीन होती जो उस शक्तिशाली होती, तो मैं इसे अपने दूसरे टॉवर के बगल में स्थापित करता और दोनों को अलग-अलग OS के :) के साथ शुरू करता। इसके अलावा, जो मैं समझता हूं, उसके सेट होने में $ 2k से कम खर्च नहीं होगा।
जेम्स हिल

मुझे लगता है कि आप हाइपर V को एक मशीन पर चला सकते हैं ..
आकाश

2
वर्चुअलाइजेशन के लिए V हाइपर-वी में है। यदि बाधा कोई वर्चुअलाइजेशन नहीं है, तो हाइपर- v कोई समाधान नहीं है।
जे। आर। विरेन

0

वर्चुअलाइजेशन के अलावा और कोई रास्ता नहीं है। मुझे यह निश्चित जानकारी प्राप्त करना मुश्किल है कि अतिथि सिस्टम विभिन्न हाइपरविजर्स के लिए कौन सा काम करेगा। http://en.wikipedia.org/wiki/Hypervisor कुछ जानकारी प्राप्त करने के लिए एक अच्छी शुरुआत होनी चाहिए और Xen एक कोशिश के काबिल हो सकता है, हालाँकि मैं किसी के लिए प्रतीक्षा करूँगा कि अगर वह विंडोज 7 मेहमानों का समर्थन करता है तो निश्चित रूप से पुष्टि या इनकार करेगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.