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