嵌入式软件基础(3.1)------嵌入式系统软件及操作系统知识
2015-08-04 19:05
253 查看
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 嵌入式中间件
指操作系统内核、设备驱动程序和应用软件之外的所有系统软件。
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 嵌入式中间件
指操作系统内核、设备驱动程序和应用软件之外的所有系统软件。
相关文章推荐
- 算法竞赛入门经典(第二版) 习题2-6 排列(permutation)
- 最短路---Dijkstra模版
- 32位寄存器
- 取石子游戏-博弈
- Tomcat 配置HTTPS
- Mysql:This version of MySQL doesn’t yet support ‘LIMIT & IN/ALL/ANY/SOME 错误解决
- HDU 2098 分拆素数和
- 多线程的应用
- 三分钟学会缓存工具DiskLruCache
- 三分钟学会缓存工具DiskLruCache
- 算法复杂度
- 自定义StartIO例程
- 三分钟学会缓存工具DiskLruCache
- 算法复杂度
- 三分钟学会缓存工具DiskLruCache
- EventBus教程
- poj3620 avoid the lakes【dfs】
- Java反射机制(2)--反射的用途举例
- 咨询培训
- 比较好的博客