PEI → DXE Handoff là gì?

Giải thích cách PEI bàn giao dữ liệu cho DXE qua HOB list và vì sao lỗi handoff gây debug rất khó.

2 phút đọc
Firmware Execution Flow cover

PEI không kết thúc bằng việc “chạy xong rồi thôi”. Nó phải để lại đủ thông tin để DXE tiếp tục. Cơ chế bàn giao quan trọng nhất là HOB list.

01 PEIM

Phát hiện platform

Memory, firmware volume, boot mode, resource.

02 HOB

Đóng gói dữ liệu

Tạo HOB theo type/GUID để DXE đọc.

03 DXE Core

Consume HOB

Dựng memory services, tìm FV, dispatch driver.

Ví dụ thực tế

DXE driver không tìm thấy firmware volume phụ. Nếu chỉ nhìn DXE dispatcher, bạn có thể nghĩ driver bị thiếu trong FDF. Nhưng nguyên nhân có thể là PEI chưa tạo Firmware Volume HOB, nên DXE không biết ở đâu có FV để scan.

Mục Giá trị Ghi chú
Memory HOB Mô tả vùng RAM usable/reserved Sai ở đây có thể kéo theo memory map sai về sau.
FV HOB Chỉ ra firmware volume DXE dispatcher cần để tìm driver.
GUID HOB Dữ liệu platform-specific Thường dùng để truyền board ID, policy, silicon data.
Boot Mode Normal/S3/Recovery... Ảnh hưởng đường dispatch của PEI/DXE.

Debug diary

Triệu chứng: DXE bắt đầu chạy nhưng thiếu driver hoặc thiếu resource. Đừng vội sửa DXE. Hãy dump/log HOB list trước.

Checklist PEI → DXE handoff

Bài liên quan

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.

Nội dung liên quan

Một số bài viết, ghi chú hoặc project có liên quan đến nội dung bạn vừa đọc.

Biến note thành bài viết hoàn chỉnh

Notes là nơi ghi nhanh khái niệm.