दूसरे चरण के बूट लोडर, जैसे GNU GRUB, rEFInd, BOOTMGR, Syslinux, NTLDR या iBoot, स्वयं ऑपरेटिंग सिस्टम नहीं हैं, लेकिन एक ऑपरेटिंग सिस्टम को ठीक से लोड करने और उसमें निष्पादन स्थानांतरित करने में सक्षम हैं; ऑपरेटिंग सिस्टम बाद में स्वयं आरंभ हो जाता है और अतिरिक्त डिवाइस ड्राइवर लोड कर सकता है। दूसरे चरण के बूट लोडर को अपने संचालन के लिए ड्राइवरों की आवश्यकता नहीं होती है, बल्कि इसके बजाय सिस्टम फ़र्मवेयर जैसे कि BIOS या ओपन फ़र्मवेयर द्वारा प्रदान की जाने वाली सामान्य स्टोरेज एक्सेस विधियों का उपयोग कर सकता है, हालांकि आमतौर पर प्रतिबंधित हार्डवेयर कार्यक्षमता और कम प्रदर्शन के साथ।

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

बूट प्रक्रिया को तब पूर्ण माना जा सकता है जब कंप्यूटर उपयोगकर्ता के साथ बातचीत करने के लिए तैयार हो, या ऑपरेटिंग सिस्टम सिस्टम प्रोग्राम या एप्लिकेशन प्रोग्राम चलाने में सक्षम हो।

कई एम्बेडेड सिस्टम को तुरंत बूट होना चाहिए। उदाहरण के लिए, डिजिटल टेलीविजन या जीपीएस नेविगेशन डिवाइस के शुरू होने के लिए एक मिनट तक इंतजार करना आम तौर पर अस्वीकार्य है। इसलिए, ऐसे उपकरणों में ROM या फ़्लैश मेमोरी में सॉफ़्टवेयर सिस्टम होते हैं ताकि उपकरण तुरंत काम करना शुरू कर सके; बहुत कम या कोई लोडिंग आवश्यक नहीं है, क्योंकि डिवाइस बनाते समय लोडिंग को पूर्व-गणना और ROM पर संग्रहीत किया जा सकता है।

बड़े और जटिल सिस्टम में बूट प्रक्रियाएँ हो सकती हैं जो कई चरणों में आगे बढ़ती हैं जब तक कि अंततः ऑपरेटिंग सिस्टम और अन्य प्रोग्राम लोड नहीं हो जाते और निष्पादित होने के लिए तैयार नहीं हो जाते। क्योंकि ऑपरेटिंग सिस्टम को ऐसे डिज़ाइन किया जाता है जैसे कि वे कभी भी शुरू या बंद नहीं होते हैं, एक बूट लोडर ऑपरेटिंग सिस्टम को लोड कर सकता है, खुद को उस सिस्टम के भीतर एक मात्र प्रक्रिया के रूप में कॉन्फ़िगर कर सकता है, और फिर अपरिवर्तनीय रूप से ऑपरेटिंग सिस्टम पर नियंत्रण स्थानांतरित कर सकता है। फिर बूट लोडर किसी भी अन्य प्रक्रिया की तरह सामान्य रूप से समाप्त हो जाता है।
दो चरणों वाले बूटलोडर में वास्तव में एक के बाद एक दो बूटलोडर होते हैं। पहला छोटा होने के कारण दूसरा लोड करने का एकमात्र उद्देश्य है। दूसरे में कर्नेल लोड करने के लिए आवश्यक सभी कोड शामिल हो सकते हैं। GRUB दो (या यकीनन, तीन) चरणों का उपयोग करता है।
दूसरे चरण के बूट लोडर, जैसे GNU GRUB, rEFInd, BOOTMGR, Syslinux, NTLDR या iBoot, स्वयं ऑपरेटिंग सिस्टम नहीं हैं, लेकिन एक ऑपरेटिंग सिस्टम को ठीक से लोड करने और उसमें निष्पादन स्थानांतरित करने में सक्षम हैं; ऑपरेटिंग सिस्टम बाद में स्वयं आरंभ हो जाता है और अतिरिक्त डिवाइस ड्राइवर लोड कर सकता है। दूसरे चरण के बूट लोडर को अपने संचालन के लिए ड्राइवरों की आवश्यकता नहीं होती है, बल्कि इसके बजाय सिस्टम फ़र्मवेयर जैसे कि BIOS या ओपन फ़र्मवेयर द्वारा प्रदान की जाने वाली सामान्य स्टोरेज एक्सेस विधियों का उपयोग कर सकता है, हालांकि आमतौर पर प्रतिबंधित हार्डवेयर कार्यक्षमता और कम प्रदर्शन के साथ।

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

बूट प्रक्रिया को तब पूर्ण माना जा सकता है जब कंप्यूटर उपयोगकर्ता के साथ बातचीत करने के लिए तैयार हो, या ऑपरेटिंग सिस्टम सिस्टम प्रोग्राम या एप्लिकेशन प्रोग्राम चलाने में सक्षम हो।

कई एम्बेडेड सिस्टम को तुरंत बूट होना चाहिए। उदाहरण के लिए, डिजिटल टेलीविजन या जीपीएस नेविगेशन डिवाइस के शुरू होने के लिए एक मिनट तक इंतजार करना आम तौर पर अस्वीकार्य है। इसलिए, ऐसे उपकरणों में ROM या फ़्लैश मेमोरी में सॉफ़्टवेयर सिस्टम होते हैं ताकि उपकरण तुरंत काम करना शुरू कर सके; बहुत कम या कोई लोडिंग आवश्यक नहीं है, क्योंकि डिवाइस बनाते समय लोडिंग को पूर्व-गणना और ROM पर संग्रहीत किया जा सकता है।

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