दोन टप्प्यांचा बूटलोडर प्रत्यक्षात दोन बूटलोडर्स एकमेकांच्या मागे असतो. पहिला लहान आहे आणि त्याचा एकमेव उद्देश दुसऱ्याला लोड करणे आहे. दुसऱ्या एकामध्ये कर्नल लोड करण्यासाठी आवश्यक असलेला सर्व कोड असू शकतो. GRUB दोन (किंवा वादग्रस्त, तीन) टप्प्यांचा वापर करते.
लिनक्स सेकंड-स्टेज बूट लोडर
Context:दुसऱ्या टप्प्यातील बूट लोडर, जसे की GNU GRUB, rEFInd, BOOTMGR, Syslinux, NTLDR किंवा iBoot, स्वतः ऑपरेटिंग सिस्टम नाहीत, परंतु ऑपरेटिंग सिस्टम योग्यरित्या लोड करण्यास आणि त्यावर अंमलबजावणी हस्तांतरित करण्यास सक्षम आहेत; ऑपरेटिंग सिस्टम नंतर स्वतः ला सुरू करते आणि अतिरिक्त डिव्हाइस ड्राइव्हर्स लोड करू शकते. दुसर्या टप्प्यातील बूट लोडरला त्याच्या स्वतः च्या ऑपरेशनसाठी ड्रायव्हर्सची आवश्यकता नसते, परंतु त्याऐवजी सिस्टम फर्मवेअर जसे की BIOS किंवा ओपन फर्मवेअरद्वारे प्रदान केलेल्या सर्वसाधारण स्टोरेज प्रवेश पद्धती वापरू शकतात, जरी सामान्यतः मर्यादित हार्डवेअर कार्यक्षमता आणि कमी कार्यक्षमता असत.  अनेक बूट लोडर्स वापरकर्त्यास अनेक बूट पर्याय देण्यासाठी कॉन्फिगर केले जाऊ शकतात. या निवडींमध्ये भिन्न ऑपरेटिंग सिस्टम (विविध विभाजने किंवा ड्राइव्हपासून ड्युअल किंवा मल्टी-बूटिंगसाठी), समान ऑपरेटिंग सिस्टमच्या भिन्न आवृत्त्या (नवीन आवृत्तीमध्ये अनपेक्षित समस्या असल्यास), भिन्न ऑपरेटिंग सिस्टम लोडिंग पर्याय (उदाहरणार्थ, बचाव किंवा सुरक्षित मोडमध्ये बूट करणे) आणि काही स्टँडअलोन प्रोग्राम जे ऑपरेटिंग सिस्टमशिवाय कार्य करू शकतात, जसे की मेमरी टेस्टर (उदाहरणार्थ, मेमटेस्ट86+), मूलभूत शेल (जीएनयू ग्रबमध्ये) किंवा अगदी गेम (पीसी बूट लोडर गेमची यादी पहा). काही बूट लोडर इतर बूट लोडर देखील लोड करू शकतात; उदाहरणार्थ, ग्रब थेट विंडोज लोड करण्याऐवजी बीओटीएमजीआर लोड करते. सामान्यतः, डीफॉल्ट पर्याय वेळेच्या विलंबासह पूर्व-निवडला जातो ज्या दरम्यान वापरकर्ता निवड बदलण्यासाठी की दाबू शकतो; या विलंबा नंतर, डीफॉल्ट पर्याय स्वयंचलितपणे चालविला जातो जेणेकरून सामान्य बूट करणे परस्परसंवादाशिवाय होऊ शकते.  जेव्हा संगणक वापरकर्त्याशी संवाद साधण्यास तयार असेल किंवा ऑपरेटिंग सिस्टम सिस्टम प्रोग्राम किंवा अनुप्रयोग प्रोग्राम चालविण्यास सक्षम असेल तेव्हा बूट प्रक्रिया पूर्ण मानली जाऊ शकते.  बऱ्याच एम्बेडेड सिस्टिमला तात्काळ बूट करावे लागते. उदाहरणार्थ, डिजिटल टेलिव्हिजन किंवा जीपीएस नेव्हिगेशन डिव्हाइस सुरू होण्यासाठी एक मिनिट प्रतीक्षा करणे सामान्यतः अस्वीकार्य आहे. म्हणूनच, अशा उपकरणांमध्ये ROM किंवा फ्लॅश मेमरीमध्ये सॉफ्टवेअर सिस्टम असतात जेणेकरून डिव्हाइस त्वरित कार्य करण्यास प्रारंभ करू शकेल; लोडिंग आवश्यक नाही किंवा कमी आहे, कारण लोडिंगची पूर्व गणना केली जाऊ शकते आणि डिव्हाइस तयार झाल्यावर ROM वर संग्रहित केली जाऊ शकते.  मोठ्या आणि गुंतागुंतीच्या सिस्टीममध्ये बूट प्रक्रिया असू शकतात जी अनेक टप्प्यांत पुढे जातात जोपर्यंत शेवटी ऑपरेटिंग सिस्टम आणि इतर प्रोग्राम लोड केले जात नाहीत आणि चालविण्यास तयार नाहीत. ऑपरेटिंग सिस्टीम अशा प्रकारे डिझाइन केलेले आहेत की ते कधीही प्रारंभ किंवा थांबत नाहीत, बूट लोडर ऑपरेटिंग सिस्टम लोड करू शकतो, त्या सिस्टममधील फक्त एक प्रक्रिया म्हणून स्वतः ला कॉन्फिगर करू शकतो आणि नंतर ऑपरेटिंग सिस्टमवर नियंत्रण कायमचे हस्तांतरित करू शकतो. त्यानंतर बूट लोडर इतर कोणत्याही प्रक्रियेप्रमाणे सामान्यपणे समाप्त होते.