बूटिंग प्रक्रिया में एमबीआर की भूमिका


0

मैं अतिप्रवाह को ढेर करने के लिए नया हूं। यदि मेरा प्रश्न अप्रासंगिक या मूर्खतापूर्ण लगता है तो कृपया मुझे सही करें।

मैं यहां बूटिंग प्रोसेस में पढ़ता हूं : प्राथमिक बूट लोडर का काम सेकेंडरी बूट लोडर को ढूंढना और लोड करना है (स्टेज 2)। यह एक सक्रिय विभाजन के लिए विभाजन तालिका को देखकर करता है। जब यह एक सक्रिय विभाजन पाता है, तो यह सुनिश्चित करने के लिए तालिका में शेष विभाजन स्कैन करता है कि वे सभी निष्क्रिय हैं। जब यह सत्यापित हो जाता है, तो सक्रिय विभाजन का बूट रिकॉर्ड डिवाइस से रैम में पढ़ा जाता है और निष्पादित होता है।

सवाल यह है कि मेरे पास एक हार्ड डिस्क है जिसमें दो ऑपरेटिंग सिस्टम इमेज विंडो और ubuntu हैं और इसलिए दोनों विभाजन जिसमें वे रहते हैं सक्रिय हैं। फिर हमारे पास हमेशा एक ही सक्रिय विभाजन क्यों होता है? (मुझे पता है कि सक्रिय विभाजन प्राथमिक विभाजन में से एक है लेकिन फिर हम एक प्राथमिक विभाजन को विशेष संदर्भ क्यों दे रहे हैं?) मैं थोड़ा भ्रमित हूं। कृपया मेरी क्वेरी हल करें।

बहुत बहुत धन्यवाद।


प्रत्येक विभाजन में एक बिट होता है जो निर्दिष्ट करता है कि क्या वह बिट सक्रिय विभाजन है। "तो फिर हमारे पास हमेशा एक ही सक्रिय विभाजन क्यों होता है?" - हम जरूरी नहीं है। अधिकांश "fdisk" प्रोग्राम अन्य सभी विभाजन सक्रिय बिट्स (शून्य पर) को साफ़ करते हैं किसी भी समय वे किसी भी विभाजन को सक्रिय बिट (एक) सेट करते हैं। सभी ऐसा नहीं करते हैं (OpenBSD का fidsk नहीं है), इसलिए कई सक्रिय विभाजन करना संभव है। इस तरह की घटना एक आम धारणा का उल्लंघन है, इसलिए व्यवहार शायद तकनीकी रूप से अपरिभाषित है (लेकिन सामान्य व्यवहार केवल उस सक्रिय बिट सेट के साथ पहले विभाजन पर कार्य करना है)।
टोगम

जवाबों:


1

मूल आईबीएम / माइक्रोसॉफ्ट बूट लोडर वर्णित के रूप में काम करता है (एक सक्रिय विभाजन की खोज)। यह व्यवहार सभी बूट लोडर के लिए सही नहीं है, हालाँकि। विशेष रूप से, लिनक्स में सामान्य रूप से बूट लोडर, जैसे कि LILO और GRUB, अन्य तरीकों से काम करते हैं; वे सक्रिय ध्वज को अनदेखा करते हैं और इसके बजाय उपयोगकर्ता के लिए एक मेनू पेश करते हैं, जिससे उपयोगकर्ता को यह चुनने में सक्षम होता है कि कौन सा ओएस बूट करना है। डॉस और विंडोज 9x / Me की आवश्यकता है कि वे सक्रिय ध्वज सेट के साथ एक विभाजन से बूट करते हैं, लेकिन मुझे पूरा यकीन है कि यह अब विंडोज के अधिक आधुनिक संस्करणों का सच नहीं है।

इसके अलावा, आपके द्वारा लिंक किए गए लेख में वर्णित पूरी प्रक्रिया पुरानी है। आधुनिक कंप्यूटर (सभी इंटेल-आधारित मैक, पीसी का विशाल बहुमत जो विंडोज 8 के साथ भेज दिया गया था, और कई विंडोज 7 सिस्टम जो 2011 के मध्य से भेज दिए गए थे) एक्सटेंसिबल फर्मवेयर इंटरफेस (ईएफआई) या इसके अपडेटेड वर्जन, यूनिफाइड एफएफआई का उपयोग कर बूट करते हैं। UEFI)। एक EFI एक BIOS से पूरी तरह से अलग तरीके से बूट करता है। (भ्रमित रूप से, कई लोग और यहां तक ​​कि पीसी निर्माता अपने ईएफआई के लिए "BIOS" शब्द लागू करते हैं, लेकिन यह भ्रामक है।) ईएफआई के तहत, एमबीआर में कोई कोड नहीं है और "सक्रिय" विभाजन जैसी कोई चीज नहीं है। इसके बजाय, जितने बूट लोडर आपको पसंद हैं, वे ईएफआई सिस्टम पार्टिशन (ईएसपी) में संग्रहीत हैं आप बूट लोडर चुनते हैं जिसे आप एक बूट प्रबंधक के माध्यम से उपयोग करना चाहते हैं जो फर्मवेयर में बनाया गया है। दुर्भाग्यवश, यह अंतर्निहित बूट प्रबंधक अक्सर खराब गुणवत्ता का होता है, और इसे एक्सेस करने के लिए अक्सर बूट समय पर एक फंक्शन कीज को हिट करना होता है, इसलिए कई दोहरे बूटर्स एक थर्ड-पार्टी बूट मैनेजर (GRUB, rEFInd, gummiboot, आदि) सेट करते हैं। ) डिफ़ॉल्ट के रूप में।

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


धन्यवाद। क्या आप मुझे इस बारे में अच्छी सामग्री वाले किसी भी लिंक का सुझाव दे सकते हैं?
pg4421

यहां गहरे तकनीकी उत्तर के लिए वोट करें।
user319647

@ pg4421 आपको उनकी वेबसाइट पर
phuclv

1

आप "मौजूदा" के रूप में "सक्रिय" को गलत समझ रहे हैं।
विभाजन तालिका के अर्थ में सक्रिय कमोबेश इसका अर्थ है "इस एक से बूट"।
आपके पास कभी भी बूट विभाजन के रूप में 1 चिह्नित होना चाहिए, और BIOS या एमबीआर आमतौर पर केवल तब ही बंद हो जाएगा जब पहले वाला पाया जाता है क्योंकि यह एक शानदार बूट विभाजन के मामले में पूरे सिस्टम को HALT से कोई मतलब नहीं होगा।

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


तो, यह कैसे तय करता है कि सक्रिय विभाजन कौन सा है? मैंने पढ़ा है कि linux में सेकंड स्टेज बूटलोडर grub.cfg में GRUB है और Windows में boot.ini है। जब मैं ubuntu wubi.exe के माध्यम से स्थापित करता हूं। boot.ini को लोड किया जाता है (यानी विंडोज़ द्वितीय चरण बूटलोडर), लेकिन अगर मैं इसे ubuntu लाइव-सीडी या बूट करने योग्य USB का उपयोग करके स्थापित करता हूं, तो ग्रब को द्वितीय चरण बूटलोडर के रूप में लोड किया जाता है। कैसे होता है?
pg4421

यदि MBR ​​में कोई बूट मेनू नहीं है (MBR में एक छोटा प्रोग्राम / कोड है) तो यह बूट के लिए चिह्नित पहला ("सक्रिय") होगा। और यदि यह विफल रहता है तो आपको MBR ("डिस्क ड्राइव चेक करें", "NTLDR मिसिंग", "GRUB 0x293429873643") से उत्पन्न एक त्रुटि दिखाई देगी। ग्रब उन MBR में कोड रखता है जो तब GRUB प्रोग्राम को आपके / boot विभाजन से लोड करता है। विभिन्न OS स्थापित करने से MBR को इसके पक्ष में फिर से लिखना पड़ता है।
एक्रीकरई

0

निम्नलिखित उस विशेष बिंदु को संबोधित कर सकता है जहां आप फंस गए हैं, लेकिन मैं उस तरह से विशेषज्ञ नहीं हूं जिस तरह से बूट प्रक्रिया आम तौर पर काम करती है।

वन हार्ड ड्राइव में केवल एक सक्रिय विभाजन है

इसलिए यदि आपके पास दो हार्ड ड्राइव हैं तो प्रत्येक में एक सक्रिय विभाजन हो सकता है

BIOS चुनता है कि बूट करने के लिए कौन सी हार्ड ड्राइव है।

सक्रिय विभाजन (उस हार्ड ड्राइव का) से बूट किया जाता है।

आप छवियों के बारे में बात करते हैं, जो विभाजन को लिखते समय और यदि सभी विभाजन को लिखते हुए प्रासंगिक हो सकते हैं, लेकिन आपके द्वारा उस लेखन को करने के बाद यह प्रासंगिक नहीं है। आपके द्वारा उस लेखन को करने के बाद, आपके पास विभाजन के साथ एक हार्ड ड्राइव है। ठीक वैसे ही जैसे आपके पास होगा अगर आपने बिना किसी विभाजन के साथ हार्ड ड्राइव को नया बनाया और उन्हें बनाया और उन पर ओएस स्थापित किया। छवि फ़ाइलें और जली हुई छवियां प्रासंगिक नहीं हैं।

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