読み方 : ビーエスピー
BSP【Board Supprt Package】ボードサポートパッケージ
概要
BSPとは、特定の電子基板上でオペレーティングシステム(OS)を動作させるために必要となる、ソフトウェア一式をまとめたパッケージ。基板の開発元が提供するもので、ハードウェアとOSの間を橋渡しして基板固有の機能を制御する役割を担う。

組み込みシステムでは、CPUやメモリ、各種周辺回路を搭載した専用の電子基板(ボード)上でソフトウェアを動作させる。このとき、汎用のオペレーティングシステムをそのまま導入しても、基板固有のハードウェア構成に対応していなければ正しく動作しない。
BSPはソフトウェアから基板固有のハードウェアを制御できるようにするために提供されるソフトウェアで、ブートローダ、デバイスドライバ、ハードウェア初期化コード、ボード固有の設定情報などを含む。これにより、OSのカーネルが対象基板上で起動し、周辺機器を利用できるようになる。
例えば、同じ機種のCPUを採用していても、搭載されるメモリ容量や接続される通信インターフェース、入出力ポートの構成は基板ごとに異なり、メモリマップの定義や割り込み設定、クロック制御などを基板仕様に合わせて調整する必要がある。BSPはこれらの設定をあらかじめ実装した形で提供され、開発者はハードウェア制御の詳細を一から調べて個別に記述することなくソフトウェア開発に着手できる。
BSPはプロセッサメーカーや基板メーカーが提供することが多い。対応するOSとしては組み込み向けLinuxやリアルタイムOSなどがあり、それぞれに適合したBSPが用意される。開発する機器の仕様に合わせてカスタマイズされることも多い。新たな基板を設計した場合には、既存BSPをベースに移植作業を行うこともある。移植の過程では、ドライバの追加や設定変更、不要機能の削除などが実施される。