HAL(ハードウェア抽象化層)とは?
HAL(ハードウェア抽象化層)とは、上位のソフトウェアから見たハードウェアの操作を、機種によらない関数の集まりとして定義した層。レジスタの直接操作をこの層に閉じ込めることで、マイコンや周辺回路を載せ替えても上位を書き換えずに済む構造にする。
えいちえーえる
HAL(ハードウェア抽象化層)の意味
上位のソフトウェアから見たハードウェアの操作を、機種によらない関数の集まりとして定義した層。レジスタの直接操作をこの層に閉じ込めることで、マイコンや周辺回路を載せ替えても上位を書き換えずに済む構造にする。
HAL(ハードウェア抽象化層)の具体例
通信を「開く・送る・受け取る・閉じる」の4つの関数として定義し、内部でUARTのレジスタを叩く実装と、USB経由の実装を差し替えられるようにする。試験時は実機のない模擬実装に差し替え、PC上で上位の論理だけを検証する。
HAL(ハードウェア抽象化層)は試験でどう引っ掛けられる?
抽象化の粒度を誤ると破綻する。DMAや割込みの都合が上位へ漏れる作りでは移植性が出ず、逆に隠しすぎると性能が要る場面で直接操作の抜け道を作ることになる。層を挟む分の呼出し費用も無視できない。
HAL(ハードウェア抽象化層)と関連する用語
最終更新:2026-08-25/解説は資格暗記が独自に作成しています。 過去問の出典は各問題に記載のとおりです。