組み込みシステムでは、ボードサポートパッケージ(BSP )は、ブートローダー、デバイスドライバ、場合によってはカーネルなどのハードウェア固有のルーチンを含むソフトウェア層であり、特定の組み込みオペレーティングシステム(多くの場合、リアルタイムオペレーティングシステム)が特定のハードウェア環境(マザーボード)で機能できるようにします。[ 1 ] [ 2 ] [ 3 ]ボードサポートパッケージは通常、SoCメーカー( Qualcommなど)によって提供され、OEMによって変更される場合があります。
特定の組み込みオペレーティングシステムをサポートしたいサードパーティのハードウェア開発者は、その組み込みオペレーティングシステムが自社のプラットフォーム上で動作するようにするBSP(Bassive Support Program)を作成する必要があります。ほとんどの場合、BSP、ソフトウェアライセンス、およびハードウェアサポートを含む組み込みオペレーティングシステムイメージは、ハードウェアベンダーによってバンドルされています。
BSPは通常カスタマイズ可能で、ユーザーは選択したハードウェアとソフトウェアのオプションに基づいて、ビルドに含めるドライバとルーチンを指定できます。たとえば、特定のシングルボードコンピュータに複数の周辺チップが付属している場合、BSPにはサポートされている周辺チップ用のドライバが含まれる可能性があります。BSPイメージをビルドする際に、ユーザーは選択したハードウェアに基づいて、含める周辺ドライバを指定します。
一部のサプライヤーは、BSPに加えて、ルートファイルシステム、組み込みシステム上で実行するプログラムを構築するためのツールチェーン、および(実行中に)デバイスを設定するためのユーティリティも提供しています。多くの組み込みオペレーティングシステムプロバイダーは、BSP開発者が新しいハードウェアプラットフォーム上に組み込みオペレーティングシステムをセットアップするのに役立つテンプレートBSP、開発者支援、およびテストスイートを提供しています。
さらに、BSPは以下の操作を実行することになっています。
BSPという用語は、1981年にVersatile Real-Time Executive(VRTX)の開発元であるHunter & Ready社が、特定のハードウェアプラットフォーム上でVRTXを実行するために必要なハードウェア依存型ソフトウェアを説明するために初めて用いて以来、広く使われています。1980年代以降、業界全体で広く使用されるようになり、現在ではほぼすべてのRTOSプロバイダーがBSPという用語を使用しています。
現代のシステムでは、この用語はマザーボード全体ではなく、1つのプロセッサのみを扱うパッケージを指すように拡張されている。[ 1 ]
Wind River Systems社のARM Integrator 920Tシングルボードコンピュータ用ボードサポートパッケージには、とりわけ以下の要素が含まれています。
Windows CEとAndroidもBSPを使用しています。