BSP,全称是Board Support Package。顾名思义,就是支持(Support)某种板子(Board)的一个文件夹(Package)。对于Vx5和Vx6来说,这个文件夹通常包含了一堆C文件、几个汇编文件、几个cdf文件、一些头文件、一个makefile文件、一个readme文件(版本信息),和一个target.ref文件(这个BSP的专属文档)。到了Vx7,BSP被大大简化,主要成分就是cdf和dts文件了
BSP的目的就是为了在特定的Board上更轻松地配置OS的Kernel。有了BSP这个硬件相关层,就可以相对容易的在不同硬件之间进行OS的移植了。这个移植能力是通过定义一个统一的引导流程、一组标准的系统函数来实现的
WindRiver在发布VxWorks的每个版本之前,都会在若干Board上进行验证,因此在每个版本的VxWorks都会自带若干现成的BSP
Vx5/6: $(WIND_BASE)/target/config
Vx7: (WIND_BASE)/
VxWorks的版本越高,支持的CPU越新一些,支持的Board越多一些。但世界上的设备千千万,再庞大的OS也不可能支持所有Board。因此,这才有了BSP工程师(底层工程师/驱动工程师)这个职位存在的必要
而要开发一个新的BSP,最重要的一点,是在已有BSP中找到一个接近的,做为起点。如果当前版本里,根本就没有与新Board使用相同CPU的BSP,那就得考虑换一个高版本的VxWorks了