赞
踩
规模小,但是开发难度大,需要开发者软硬都懂点。且开发和运行环境不同。
实时性可靠性要求高。
要求固化存储。
嵌入式软件分为控制管理系统资源的系统软件,辅助软件开发的支撑软件,和面向应用的应用软件。
无操作系统:硬件配置较低,应用建立在硬件上。
有操作系统:开发应用开始在操作系统基础上编写。可靠性高,开发成本、开发效率得到了优化,可以模块化编程。有利于系统的拓展和移植。
操作系统的内核是最重要的。
设备驱动层,包括 BSP 和设备驱动程序,包含了嵌入式系统中所有与硬件相关的代码。初始化硬件,管理控制,为上层软件提供驱动支持,类似 PC 中的 BIOS 和驱动程序。
板级支持包 BSP 把硬件代码都封装起来,向操作系统提供一个虚拟化硬件平台,操作系统通过给定的 API 访问硬件。
BSP 包括的内容:
BOOT LOADER 引导加载程序,在嵌入式系统通电后,启动内核前运行的代码。初始化硬件设备,建立内存空间的映射图;调整软硬件状态,为启动操作系统内核做基础。
设备驱动程序:初始化和管理硬件,并向上层提供接口,如硬件的一些 .h 头文件。
设备驱动层中的函数有两种结构:分层结构和混合结构。
分层结构:上层软件直接调用上层接口,上层接口调用硬件接口,硬件接口调用硬件。硬件更换时,只需要修改硬件接口。硬件接口不能调用上层接口。
混合结构:没有上层接口和硬件接口的层次关系。
中间件,操作系统、设备驱动程序、应用软件之外的所有系统软件。提取出一些应用层可以复用的通用模块,提高代码可重用性,降低应用软件复杂度,但开销大。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。