嵌入式软件基础(3.1)------嵌入式系统软件及操作系统知识

本文详细介绍了嵌入式软件的特点、分类及其体系结构,包括无操作系统与有操作系统的开发方式,以及设备驱动层、中间件软件和应用软件的作用。重点阐述了设备驱动层的BSP概念和引导加载程序、设备驱动程序的功能,同时讨论了嵌入式中间件的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

3.1 嵌入式软件基础

3.1.1 嵌入式软件概述

(1 )规模较小  多数都在几MB以内。

(2 )开发难度大。

(3 )实时性和可靠性要求高  在某些情况下要求确定的、可重复实现的,不管系统当时的内部状态如何,都可以预测。

(4 )要求固化存储。

3.1.2 嵌入式软件分类

(1 )系统软件   控制和管理嵌入式系统资源,为嵌入式应用提供支持的各种软件,如设备驱动程序、嵌入式操作系统、嵌入式中间件等等。

(2 )应用软件   嵌入式系统中的上层软件,它定义了嵌入式设备的主要功能和用途,并负责与用户交互。

(3 )支撑软件   辅助软件开发的工具软件,如系统分析设计工具、在线仿真工具、交叉编译器、源程序模拟器和配置管理工具等。

3.1.3 嵌入式软件的体系结构

1.无操作系统的情景

        无操作系统的软件主要有两种实现方式:循环轮转和前后台系统。

        (1 )循环轮转方式

        (2 )前后台系统

              即在(1 )的基础上增加了中断处理功能

2.有操作系统的情景

          该开发方式,主要有以下优点

         (1 )提高了系统的可靠性。

         (2 )提高了系统的开发效率,降低了开发成本,缩短了开发周期。

         (3 )有利于系统扩展和移植。

 

           从下往上依次为

         (1 )嵌入式硬件层  如嵌入式微处理器、存储器、键盘、输入笔、LCD等输入输出设备。

         (2 )设备驱动层   负责与硬件直接打交道,并为上层软件提供所需的驱动支持。

         (3 )操作系统层   可分为基本部分和扩展部分 。 

                                            前者是操作系统的核心,负责整个系统的任务调度、存储管理、时钟管理和中断管理,这一部分是基础和必备的;

                                            后者是为用户提供一些扩展功能,如网络、文件系统、图形用户界面GUI、数据库等等,后者可以裁剪。

         (4 )中间件软件 如嵌入式CORBA      嵌入式JAVA  嵌入式DCOM   面向领域的中间件等等

         (5 )各种应用软件  如浏览器、MP3播放器 、 电子邮件等等 

3.1.4  设备驱动层

             1. 板级支持包(BSP)   类似于PC中的BIOS和驱动程序,它将底层的硬件平台与嵌入式实时操作系统隔离开来,把所有的硬件相关的代码都封装起来

                         向上提供一个虚拟的硬件平台,而操作系统运行在这个平台之上。

                  BSP主要包括两方面的内容:引导加载程序BootLoader和设备驱动程序

              2.引导加载程序

                        即引导加载程序BootLoader,一般来说,它主要包含以下的基本功能:

                       (1 )片级初始化。

                       (2 )板级初始化。

                       (3 )加载内核 :将操作系统和应用程序的映像从flash存储器复制到系统的内存当中,然后跳到系统内核的第一条指令处继续执行。

             3.设备驱动程序

3.1.5 嵌入式中间件

             指操作系统内核、设备驱动程序和应用软件之外的所有系统软件。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值