BSP和Driver的区别

您所在的位置:网站首页 bsp驱动开发工资高吗 BSP和Driver的区别

BSP和Driver的区别

2023-07-07 08:59| 来源: 网络整理| 查看: 265

BSP( Board Support Package)是板级支持包,是介于主板硬件和操作系统之间的一层,应该说是属于操作系统的一部分,主要目的是为了支持操作系统,使之能够更好的运行于硬件主板。

1)BSP是你的板子相关的代码,比如GPIO的配置,I2C连接的设备。同一款CPU,不同的板子也会因为引脚的接法不同,设备上从属设备不一样导致BSP不一样;

2)Driver,也就是我们常说的驱动,它和你的子设备是密切相关的,相同设备在相同软件平台下驱动基本是可以通用的,和板子的关系不是很大的。

在OS上的driver一般都是可动态加载的,当然嵌入OS里头直接编进去也就行了,对于一个最小的可运行OS核心来说,BSP是必不可少的,但driver不是。

总结一下:

从系统分层的角度来说,有必要将驱动开发和BSP开发分离开来。

它们都是属于内核范畴,一个内核的组成部分:

子系统,抽象出来的一些框架驱动, 基于子系统提供的接口开发出来的,针对具体设备,考虑到具体的功能需求实现的软件程序,可以静态链接入内核,也可以模块的方式游离于内核之外,在必要的时候再动态的加载,甚至可以动态的卸载。BSP,内核中针对具体的一款电路板和元器件所添加的代码,可以认为所有针对设备的代码都是驱动,但上下两层,上层的更关注设备的功能实现,具备一定的通用性,也就是我们前面说的驱动。下层就是BSP,这部分代码都是完全依附于某一款特定的电路板和元器件,不可以在不同板子之间通用。BSP的开发也要依赖具体的操作系统类型,为具体某款内核操作系统的子系统服务,适配具体的硬件体系架构。BSP作为内核能够运行于一款特定的硬件设备板子的支撑是必不可少的,必须和内核子系统静态链接。

转载自”Blog of UnicornX” (http://unicornx.github.io/)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3