บู๊ตโหลดเดอร์ (Boot Loader) เป็นแอพพลิเคชั่นที่ใช้เรียกระบบปฏิบัติการขึ้นมาทำงาน ตัวอย่างเช่น GRUB (ใช้ในการบู๊ตจากฮา์ดดิสก์) ISOLINUX (ใช้ในการบู๊ตจาก removable media) หรือ DAS U-Boot (ใช้สำหรับการบู๊ตของอุปกรณ์ฝังตัว)  

GRUB (Grand Unified Boot  Loader) เป็นแอพพลิเคชั่นบู๊ตโหลดเดอร์ที่ใช้อย่างแพร่หลายสำหรับลินุกซ์เดสก์ทอปและลินุกซ์เซอร์เวอร์ซึ่งรวมถึงแฟมิลี่เดเบี้ยน แฟมิลี่เฟโดร่า และแฟมิลี่ซูเซ่อ ในขั้นตอนที่ GRUB ทำงานหากเรามีระบบปฏิบัติการมากกว่า 1 ตัวติดตั้งอยู่ในเครื่องของเรา GRUB สามารถแสดงเมนูให้เราเลือกระบบปฏิบัติการที่ต้องการได้ด้วย หรือในกรณีที่ระบบมีปัญหาในขั้นตอนการบู๊ต GRUB ก็จะแสดงเมนูมาให้เราเลือกว่าต้องการดำเนินการอย่างไร เมื่อเราเลือกใช้งานระบบปฏิบัติการลินุกซ์ GRUB จะทำหน้าที่โหลดลินุกซ์เคอร์เนล, initial ram disk และระบบแฟ้มข้อมูลซึ่งประกอบด้วยไฟล์สำคัญๆ เช่น ไดรว์เวอร์ของอุปกรณ์ต่างๆที่ต้องใช้ในการเริ่มทำงานของระบบปฏิบัติการลงในหน่วยความจำของเครื่องคอมพิวเตอร์ 

     ในขั้นตอนนี้ระบบจะยังไม่ได้เข้าถึงหรือใช้งานอุปกรณ์เก็บข้อมูลใดๆในเครื่องคอมพิวเตอร์ แต่จะโหลดข้อมูลวันที่ เวลา และข้อมูลอุปกรณ์ต่อพ่วงสำคัญๆจาก CMOS ซึ่งเป็นชิบเก็บข้อมูลบนเมนบอร์ดของเครื่องคอมพิวเตอร์ที่ใช้ไฟจากแบตเตอรี่หล่อเลี้ยงตลอดเวลาแม้ตอนที่เราปิดเครื่องข้อมูลเหลานี้ก็จะไม่หายไป

     ขั้นตอนการทำงานของ GRUB สามารถแบ่งออกได้เป็น 2 ขั้นตอนหลักได้ดังนี้

ขั้นตอนแรก

     สำหรับเมนบอร์ดที่ใช้ระบบ BIOS/MBR GRUB จะอยู่ที่เซคเตอร์แรกของฮาร์ดดิสก์ตรงส่วนที่เราเรียกว่า Master Boot Record (MBR) ขนาดของ MBR จะมีขนาด 512 bytes ในขั้นตอนนี้ระบบจะตรวจสอบตารางเก็บข้อมูลของฮาร์ดดิสก์ (partition table) มองหาพาร์ทิชั่นที่ใช้ในการบู๊ต (bootable partition ; /boot) เพื่อค้นหาแอพพลิเคชั่นบู๊ตโหลดเดอร์ เช่น GRUB และโหลดแอพพลิเคชั่นเข้าหน่วยความจำ (RAM : Random Access Memory)

     สำหรับเมนบอร์ดที่ใช้ระบบ EFI/UEFI ตัวโปรแกรม UEFI (เป็น firmware อยู่ในชิปบนเมนบอร์ด) จะอ่านข้อมูล Boot Manager ที่ถูกเก็บไว้ว่าแอพพลิเคชั่น UEFI ตัวใดที่จะถูกโหลดและแอพพลิเคชั่นดังกล่าวเก็บอยู่ที่ไหน จากนั้นจึงโหลดแอพพลิเคชั่นนั้นขึ้นมา ซึ่งในที่นี้แอพพลิเคชั่น UEFI  ที่ว่าก็คือ บู๊ตโหลดเดอร์ เช่น GRUB นั่นเอง

ภาพแสดงพาร์ทิชั่นที่เก็บ boot loader แบบ efi

ขั้นตอนที่สอง

     GRUB ซึ่งเก็บอยูที่พาธ  /boot จะถูกโหลดขึ้นมา หน้าจอจะเปลี่ยนเป็นหน้าจอของ GRUB อาจจะมีเมนูให้เลือกระบบปฏิบัติการที่ต้องการหากมีการติดตั้งระบบปฏิบัติการไว้มากกว่า 1 ตัว หลังจากเลือกระบบปฏิบัติการลินุกซ์ GRUB จะโหลดเคอร์เนลของระบบปฏิบัติการลินุกซ์ซึ่งเป็นไฟล์ที่ถูกบีบอัดไว้เรียกว่าอิมเมจไฟล์ ดังนั้น GRUB จะมีหน้าที่ต้องขยาย (extract) อิมเมจไฟล์ และโหลดเคอร์เนลเข้าไปยังหน่วยความจำ จากนั้นจึงตรวจสอบฮาร์ดแวร์และเรียกใช้ไดรว์เวอร์ของฮาร์ดแวร์ที่่เคอร์เนลต้องใช้  หลังจากนั้นจึงส่งต่อการควบคุมให้กับเคอร์เนลต่อไป 

     นอกจากทำหน้าที่โหลดเคอร์เนลเข้าสู่หน่วยความจำแล้ว GRUB ยังทำหน้าที่โหลดไฟล์ Initial RAM Disk (initramfs) เข้าสู่หน่วยความจำเพื่อให้เคอร์เนลรู้จักระบบแฟ้มข้อมูลที่จะใช้งานด้วย

ภาพหน้าจอเมนูของ boot loader (GRUB)