Removable Media Boot là gì?
Quicknote Removable Media Boot là gì?
Removable Media Boot là cơ chế boot từ thiết bị tháo rời như USB. UEFI thường tìm file boot loader theo fallback path chuẩn trên ESP/FAT partition của thiết bị.
Vai trò chính
- Boot USB installer/recovery tool.
- Không nhất thiết cần Boot#### lưu sẵn trong NVRAM.
- Phụ thuộc USB init, filesystem driver và fallback path.
Ví dụ thực tế
Khi đọc một khái niệm firmware, hãy luôn đặt nó vào flow boot: nó xuất hiện ở phase nào, do module nào tạo ra, module nào consume, và nếu sai thì log/debug sẽ biểu hiện ra sao.
Checklist nhanh
Ghi nhớ nhanh
USB boot trong UEFI thường dựa vào fallback path và khả năng firmware đọc filesystem.
Đặt vào flow hệ thống
Khi học Removable Media Boot, mình không muốn chỉ dừng ở định nghĩa. Mình thường tự hỏi ba câu: nó được tạo ra ở đâu, ai sẽ đọc nó, và nếu nó sai thì lỗi sẽ biểu hiện ở tầng nào. Cách nhìn này giúp biến một thuật ngữ khô khan thành một điểm kiểm tra cụ thể trong flow debug.
Minh họa nhanh
Một lỗi boot đôi khi không nằm ở boot loader, mà nằm ở metadata dẫn đường: boot option, device path, variable hoặc thứ tự thử boot. Khi gặp trường hợp máy từng boot được nhưng sau update BIOS, đổi disk hoặc clear CMOS lại boot sai, Removable Media Boot là một trong những điểm nên kiểm tra trước.
Khi gặp trong thực tế
Với Removable Media Boot, đừng chỉ đọc như một biến độc lập. Hãy đặt nó vào chuỗi: Boot Manager đọc NVRAM → chọn Boot option → parse Device Path → mở file .efi → chuyển quyền cho loader. Khi boot sai thiết bị, lỗi thường nằm ở metadata dẫn đường trước khi nằm ở bản thân boot loader.
Một cách debug nhanh là dump các biến boot từ UEFI Shell hoặc OS tool, rồi kiểm tra xem giá trị đang trỏ tới option nào, option đó còn active không, và device path bên trong còn đúng với disk/partition hiện tại không.
Bài liên quan
- Fallback Boot Path là gì?
- EFI System Partition là gì?
- EFI_LOAD_OPTION là gì?
- BootOrder là gì?
- BootNext là gì?
Nguồn tham khảo public
- UEFI Specification 2.11 - Boot Manager
- EDK II - UefiBootManagerLib/BmBoot.c
- EDK II - UefiBootManagerLib.h
Thấy nội dung này hữu ích?
Lưu lại hoặc chia sẻ cho người cũng đang học firmware, BIOS/UEFI và embedded systems.
Biến note thành bài viết hoàn chỉnh
Notes là nơi ghi nhanh khái niệm.