USB Device Path Nodeとは?
BIOS/UEFIおよびembedded firmware学習者向けにUSB Device Path Nodeを説明するクイックノート。
USB Device Path Nodeは、device、partition、file、boot targetへの構造化された経路を表すUEFI Device Path関連の概念である。
USB node が持つ情報
USB node は通常、USB device へ到達する port と interface を表します。Text 表現は次のようになります。
Usb(ParentPort, Interface)
USB boot option は、別の port に差す、hub を挟む、firmware の enumeration 順が変わる、というだけで変わることがあります。USB boot が不安定な場合、保存された device path と実際に接続されている USB の path を比較します。
なぜ重要か
- UEFIがdeviceやfileへの経路をどのように記述するかを説明する。
- 古いboot optionや誤ったdevice pathのdebugに役立つ。
- Boot#### variableと実際のhardware topologyを比較しやすくする。
実例
例:NVMe SSDのboot optionは、PCI node → NVMe/storage node → HD node → FilePath nodeのようなpath chainを持つことが多い。
クイックチェックリスト
覚えておくポイント
USB Device Path Nodeは小さな概念に見えても、logを読むときや実際のfirmware debugで重要になる。
システムの流れに置く
USB Device Path Node は、単独の用語として暗記するよりも、firmware の流れの中に置くと理解しやすいです。誰が作り、誰が読み、値が間違ったときにどの症状として出るのかを意識すると、学習用のメモがそのまま debug のチェックポイントになります。
イメージしやすい例
boot 失敗は boot loader そのものではなく、そこへ到達するための metadata が原因になることがあります。BIOS update、disk 交換、CMOS clear の後に挙動が変わったときは、boot variable、device path、boot order を先に確認します。USB Device Path Node はその経路を読むための手がかりです。
実際のデバッグで見るポイント
USB Device Path Node は単独の用語ではなく、boot chain の一部として見ると理解しやすいです。つまり Boot Manager が NVRAM を読む → Boot option を選ぶ → Device Path を parse する → .efi file を開く → loader に制御を渡す という流れです。意図しない device から boot する場合、boot loader そのものよりも、そこへ到達するための metadata が原因になることがあります。
実務では、boot variable を dump し、その値がどの option を指しているか、その option が active か、内部の device path が現在の disk/partition 構成と一致しているかを確認します。
関連ノート
- Device Path Nodeとは?
- FilePath Device Path Nodeとは?
- HD Device Path Nodeとは?
- PCI Device Path Nodeとは?
- DevicePathToTextとは?
公開参考資料
この記事は役に立ちましたか?
ファームウェア、BIOS/UEFI、組み込みシステムを学んでいる人に共有できます。
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.