BSP包含的内容取决于背景; 通常,它是支持特定电路板设计的代码或库.这可以作为来自电路板供应商的通用代码提供,用于裸机系统或与OS集成,或者它可以特定于特定OS,或者甚至可以包括OS.无论如何,它为更高级别的软件提供了特定于板的支持.
内核与电路板无关(尽管通常是特定于处理器体系结构),并且不能直接访问不是运行它的处理器体系结构固有的硬件.通常,OS或应用程序将需要硬件抽象层(HAL); HAL可以使用BSP构建,或者BSP实际上可以是HAL.供应商甚至可以打包HAL和OS,并将其称为BSP.
这个术语意味着对使用它的人意味着什么 - 上下文就是一切.例如,在VxWorks中,WindRiver使用术语BSP来指代支持在特定硬件设计上执行基于VxWorks的应用程序的层.另一方面,电路板供应商可以提供移植到电路板的完整Linux发行版,并将其称为BSP.
然而,特定供应商或开发人员选择支持董事会的程度是董事会支持包,无论其包含多少或多少.
BSP 的定义很广泛。它是特定板卡的配套软件包。微型微控制器的 BSP 可能只包含其外围设备的硬件驱动程序。另一方面,对于嵌入式 CPU,它可能包含硬件驱动程序、引导加载程序和操作系统内核等等。
因此,BSP(主板支持包)中的内核只是移植到主板上的操作系统内核的特定版本。