作业帮 > 综合 > 作业

什么叫BSP?BSP概念解析

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/11/08 04:46:34
什么叫BSP?BSP概念解析
BSP是相对于操作系统而言的,不同的操作系统对应于不同定义形式的BSP,例如VxWorks的BSP和Linux的BSP相对于某一CPU来说尽管实现的功能一样,可是写法和接口定义是完全不同的,所以写BSP一定要按照该系统BSP的定义形式来写(BSP的编程过程大多数是在某一个成型的BSP模板上进行修改).这样才能与上层OS保持正确的接口,良好的支持上层OS.
例如:在VxWorks中的网卡驱动,首先在config.h中包含该网卡,然后将网卡含网卡的信息的参数放入数组 END_TBL_ENTRY endDevTbl [] 中,系统通过函数muxDevLoad( )调用这个数组来安装网卡驱动.
而在Linux中的网卡驱动,是在space.c中声明该网络设备,再把网卡驱动的一些函数加到dev结构中,由函数ether_setup()来完成网卡驱动的安装.
纯粹的BSP所包含的内容一般说来是和系统有关的驱动和程序,如网络驱动和系统中网络协议有关,串口驱动和系统下载调试有关等等.离开这些驱动系统就不能正常工作.
Tornado中BSP的编译和上层应用程序不同,用命令行或直接在Tornado环境下Build,在Tornado下不能跟踪调试.
用户也可以添加自己的程序到BSP中,但严格来说不应该算BSP.一般来说这种做法不建议.因为一旦操作系统能良好运行于最终的主板硬件后,BSP也就固定了,不需要做任何改动.