Mở menu

UEFI Variable là gì?

Quicknote giải thích UEFI Variable và NVRAM trong firmware.

2 phút đọc
Đọc bằng Tiếng Việt English 日本語
BIOS Terms cover

UEFI Variable là gì?

UEFI Variable là cơ chế lưu dữ liệu key-value của firmware. Mỗi variable thường được xác định bởi tên, vendor GUID và attribute. Một số variable nằm trong non-volatile storage nên vẫn còn sau khi tắt máy.

Vai trò chính

  • Lưu boot option như Boot####, BootOrder, BootNext.
  • Lưu cấu hình setup hoặc policy firmware.
  • Lưu dữ liệu Secure Boot như PK, KEK, db, dbx.
  • Cho phép OS và firmware trao đổi một số trạng thái runtime.

Pattern thường gặp

  • GetVariable() để đọc.
  • SetVariable() để ghi.
  • Variable attribute quyết định non-volatile, boot-service access, runtime access hoặc authenticated write.

Ví dụ public-safe

Ví dụ đọc một UEFI variable ở mức ý tưởng:

Status = gRT->GetVariable(
  L"BootOrder",
  &gEfiGlobalVariableGuid,
  &Attributes,
  &DataSize,
  Buffer
);

Nếu StatusEFI_BUFFER_TOO_SMALL, flow đúng thường là allocate buffer đủ lớn rồi gọi lại.

Checklist nhanh

  • Variable name và vendor GUID có đúng không?
  • Attribute có đúng mục đích không?
  • Storage NVRAM có đầy không?
  • Có cần authenticated variable không?

Ghi nhớ nhanh

UEFI Variable = cấu hình/trạng thái firmware lưu theo Name + VendorGuid + Attributes.

Bài liên quan

Nguồn tham khảo public

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.