嵌入式系统与软件3.ppt

上传人:sccc 文档编号:5394820 上传时间:2023-07-03 格式:PPT 页数:67 大小:1.48MB
返回 下载 相关 举报
嵌入式系统与软件3.ppt_第1页
第1页 / 共67页
嵌入式系统与软件3.ppt_第2页
第2页 / 共67页
嵌入式系统与软件3.ppt_第3页
第3页 / 共67页
嵌入式系统与软件3.ppt_第4页
第4页 / 共67页
嵌入式系统与软件3.ppt_第5页
第5页 / 共67页
点击查看更多>>
资源描述

《嵌入式系统与软件3.ppt》由会员分享,可在线阅读,更多相关《嵌入式系统与软件3.ppt(67页珍藏版)》请在三一办公上搜索。

1、1,嵌入式软件系统,2,嵌入式软件系统概述,嵌入式软件和通用计算机的软件一样,一般分为系统软件、支撑软件和应用软件三大类。系统软件:控制、管理计算机系统的资源。如:嵌入式操作系统、嵌入式中间件(CORBA、Java)等支撑软件:辅助软件开发的工具。如:系统分析设计工具、仿真开发工具、交叉开发工具、测试工具、配置管理工具、维护工具等。应用软件:是面向应用领域。如:手机软件、路由器软件、交换机软件、飞控软件等,3,从运行平台来分,嵌入式软件可以分为运行在开发平台上的软件:设计、开发、测试工具等运行在嵌入式系统上的软件:嵌入式操作系统、应用程序、驱动程序。,嵌入式软件系统概述,4,嵌入式系统的软件体

2、系结构,按嵌入式系统软件复杂程度来分类 循环轮询系统有限状态机系统前后台系统单处理器多任务系统多处理器多任务系统,5,循环轮询系统,最简单的软件结构:循环轮询;程序依次检查系统的每一个输入条件,一旦条件成绩就进行相应的处理;适合于慢速和非常快速的简单系统。,6,查询点1,查询点2,查询点3,查询点4,查询点5,查询点6,处理段1,处理段6,处理段5,处理段4,处理段2,处理段31,单回路顺序程序结构简单易编写,单一处理响应快,复杂处理响应迟,适合单一处理者,7,流程,8,程序结构,Initialize();While(TRUE)process();,Initialize();While(TRU

3、E)if(condition1)action_1();if(condition2)action_2();/*etc.*/,9,循环轮询系统,循环轮询系统优点:对于简单的系统而言,便于编程和理解没有中断机制,程序运行良好,不会出现随机问题循环轮询系统缺点:有限的应用领域(由于不可确定性)对于大量的I/O服务的应用,不容易实现大的程序不便于调试因此,它适合于慢速和非常快速的简单系统。,10,有限状态机系统,有限状态机是实时系统设计中一种重要的、易于建立的、应用比较广泛的、以描述控制特性为主的建模方法,它可以应用于从系统分析到设计的所有阶段。,11,有限状态机系统,有限状态机组成 一个有限的状态集合

4、Q 一个有限的输入集合I 一个变迁函数集合:QIQ 有限状态机通常用“状态转移图”和“状态转移表”的方式来表示,12,有限状态机系统,状态转移图中的节点代表状态,若在输入下状态由q1转变为状态q2,则有一条标有输入的弧线从状态q1指向q2。此时,其变迁函数(q1,i)=q2。,13,有限状态机举例,有限状态机系统,14,有限状态机系统,15,有限状态机优点:简单易用,状态间的关系能够直观看到,便于编程可以快速的执行 只是通过改变输出功能来改变机器的响应有限状态机缺点:任何时刻系统只能有一个状态,无法表示并发性,不能描述异步并发的系统 在系统部件较多时,状态数随之增加,导致复杂性显著增长 对于大

5、的应用系统,难于调试,有限状态机系统,16,后台是一个一直在运行的系统。前台是由一些中断处理过程组成的。当有一前台事件(外部事件)发生时,引起中断,于是将中断后台运行而进行前台处理,处理完成后又回到后台(通常又称主程序)。,前后台系统,17,运行方式,18,流程,19,需要考虑的是中断的现场保护和恢复,中断嵌套,中断处理过程与主程序的协调(共享资源)问题。系统的性能主要由中断延迟时间(Interrupt latency time),响应时间(response time)和恢复时间(recovery time)来刻画。,前后台系统,20,对于一个复杂的嵌入式实时系统来说,当采用中断处理程序加一个

6、后台主程序这种软件结构难以实时的、准确的、可靠的完成时存在一些互不相关的过程需要在一个计算机中同时处理时,就需要采用实时多任务系统。,单处理器多任务系统,21,结构,由多个任务,多个中断处理过程,实时操作系统组成的有机的整体。,每个任务是顺序执行的,并行性通过操作系统来完成,任务间的相互通信和同步也需要操作系统的支持。,22,流程,23,单处理器多任务系统主要特点:多个顺序执行的程序并行运行(任务)宏观上看,所有任务同时运行,每个任务运行在自己独立的CPU上实际上,不同的任务是共享同一个CPU和其它硬件。因此,需要RTOS来对这些共享的设备和数据进行管理每个程序都被编制成无限循环的程序,等待特

7、定的输入,执行相应的任务这种程序模型将系统分成相对简单的,相互合作的模块,单处理器多任务系统,24,单处理器多任务系统主要优点:将复杂的系统分解为相对独立的多个线程,达到“分而制之”的目的,从而降低系统的复杂性保证系统的实时性系统的模块化好,提高系统的可维护性,单处理器多任务系统,25,单处理器多任务系统缺点:需要采用一些新的软件设计方法需要增加功能:线程间的协调,同步和通信功能需要对每一个共享资源互斥导致线程间的竞争需要使用RTOS,RTOS要增加系统的开销,单处理器多任务系统,26,实时多任务系统的实现必须有实时多任务操作系统的支持,操作系统主要完成:任务切换任务调度任务间通信、同步、互斥

8、实时时钟管理中断管理,单处理器多任务系统,27,多任务可运行在多个处理器上,由操作系统统一调度和处理。宏观上看是并发的,微观上看也是并发的。多处理器系统还不成熟。,多处理器系统,28,多处理器系统,紧偶合系统多个微处理器通过高速总线互连,共享存储器和I/O设备,并要求主存划分为若干个能独立访问的存储模块;松偶合系统通过通道或通信线实现计算机之间的互连,每个计算机有自己的存储器和I/O设备,并配置了OS来管理本地资源和本地运行的进程;协处理器系统由两个或多个CPU并发执行某一指令流。,29,30,多处理器系统的网络拓扑,31,多处理器系统的网络拓扑,32,嵌入式操作系统,嵌入式操作系统可以统称为

9、应用在嵌入式系统的操作系统,它具有一般操作系统的功能,同时具有嵌入式软件的特点,主要有:及时性可确定性并发性高可信性可固化 可配置、可剪裁 可扩展性 不同的CPU有不同的版本,33,嵌入式操作系统,近十年来,嵌入式操作系统得到飞速的发展从支持8位微处理器到16位、32位甚至64位微处理器;从支持单一品种的微处理器芯片到支持多品种微处理器芯片;从只有内核到除了内核外还提供其他功能模块,如文件系统,TCP/IP网络系统,窗口图形系统等随着嵌入式系统应用领域的扩展,目前嵌入式操作系统的市场在不断细分,出现了针对不同领域的产品,这些产品按领域的要求和标准提供特定的功能。,34,嵌入式操作系统分类,从应

10、用领域来分:面向信息家电的嵌入式操作系统面向智能手机嵌入式操作系统,如SymbianOS、PalmOS、Smartphone2003、Embedded Linux等面向汽车电子的嵌入式操作系统 面向工业控制的嵌入式操作系统.,35,嵌入式操作系统分类,从实时性的角度来看,嵌入式操作系统可分为嵌入式实时操作系统:具有强实时特点,如VxWorks、QNX、Nuclear、OSE、DeltaOS、各种ItronOS等。非实时嵌入式操作系统:一般只具有弱实时特点,如WinCE、版本众多的嵌入式Linux、PalmOS等。,36,IEEE的实时UNIX分委会认为实时操作系统应具备以下的几点:1.异步的事

11、件响应 实时系统为能在系统要求的时间内响应异步的外部事件,要求有异步I/O和中断处理能力。2.任务切换时间和中断延迟时间确定3.优先级调度 允许用户定义被调度任务优先级。,实时操作系统,37,4.抢占式调度 为保证响应时间,实时系统必须允许高优先级任务一旦准备好运行,就马上抢占低优先级任务的执行。5.内存锁定 内存锁定是一种保证某进程驻留在内存而不需换页的方法。在实时环境中,系统应保证将某进程锁定在内存中,以减少数据访问、指令读取、进程间缓冲区切换等等引起的延迟。将一个进程的地址空间锁定在内存中,就为应用的响应时间满足实时需要提供了保障。一般来说,对时间要求苛刻的进程应锁定在内存中。,实时操作

12、系统,38,6.连续文件 应提供存取盘上数据的优化方法,使得存取数据时查找时间最少。通常要求把数据存储在连续文件上。7.同步 提供同步执行的手段。,总之,实时系统是事件驱动的,能对来自外界的作用和信号在限定的时间范围内作出响应,强调实时性、可靠性、灵活性。,实时操作系统,39,嵌入式实时操作系统:嵌入式和实时性相结合的产物。由于其优良的特性,广泛应用于制造工业、通信、航空航天、军事武器装备等实时性要求高的实时控制系统中。应用程序的开发过程是通过交叉开发来完成的,即开发环境与运行环境是不一致的。具有规模小(一般在几十K内)、可固化使用、实时性强(在毫秒或微秒数量级上)的特点。,嵌入式操作系统,4

13、0,从嵌入式系统的商业模式来分类,可以分为商用型和开源型。商用型:功能稳定、可靠,有完善的技术支持和售后服务,开发费用+版税。开源型:开放源码,只有服务费,没有版税。如Embedded linux。,嵌入式操作系统分类,41,嵌入式操作系统的体系结构,体系结构是操作系统的基础,它定义了硬件与软件的界限、内核与操作系统其它组件(文件、网络、GUI等)的组织关系、系统与应用的接口。体系结构是确保系统的性能、可靠性、灵活性、可移植性、可扩展性的关键,就好比房子的梁架,只有梁架搭牢固了才提得上房子的质量,再做一些锦上添花的工作才有意义。目前操作系统的体系结构可分为:整体结构(即无序模块结构)、层次结构

14、和客户/服务器(微内核)结构。,42,整体结构概述:操作系统是一个整块结构,内部分为若干模块,每个模块可以是一个子程序。模块之间直接相互调用,不分层次,形成网状调用模式。这类操作系统与具体机器硬件特性紧密相关,一般用低级语言实现。很显然,这种系统结构紧凑,运行效率高,但各部分之间联系复杂,安全性难以保证,很难进行扩充或修改。这一代操作系统始于20世纪60年代初。,嵌入式操作系统的体系结构,43,整体结构,44,层次结构概述:所谓层次结构,就是把系统程序按照功能分成若干基本模块,再根据其作用和相互关联分别划归不同的层次。各模块之间的组织结构和依赖关系清晰明了,这不仅增加了系统的可靠性和可适应性,

15、而且提高了系统的可移植性。这一代操作系统始于60年代末70年代初。,嵌入式操作系统的体系结构,45,层次结构,46,客户/服务器(微内核)结构概述:微内核概念:操作系统的小核心,它将各种操作系统共同需要的核心功能(进程调度、进程间通信、存储管理、处理IO设备)提炼出来,形成微内核的基本功能。微内核直接与硬件打交道,运行于核心态。操作系统的其他功能由各服务器实现,服务器处于微内核之上,在用户态下工作。由于微内核只有操作系统最基本的功能,因此规模非常小。例如QNX微内核,只占8k内存,只有14条系统调用。,嵌入式操作系统的体系结构,47,微内核由以下两部分组成:(1)在核心态下运行的内核,通常采用

16、层次结构并构成了基本操作系统。(2)在用户态下运行的并以客户/服务器方式活动的进程层,将内核以外操作系统的其他部分都被分成若干个相对独立的进程,每个进程完成一组服务,称为服务器进程,简称服务器。而客户可以是一个用户,一个应用程序。这些外层模块通过消息传递手段与微内核联系;这些模块相互间也通过消息传递方式相互通信。,48,嵌入式操作系统的体系结构,49,微内核优点:(1)精简核心的功能,提供了一种简单的高速模块化的体系结构,提高了系统设计及使用的灵活性。同一个微内核可以同时支持一个或多个不同界面的操作系统的运行,从而方便用户软件的继承。(2)可移植性好。所有与具体机器特征相关的代码,全部隔离在微

17、内核中。如果操作系统要移植到不同的硬件平台上,只需修改微内核中少而集中的代码即可。,嵌入式操作系统的体系结构,50,(3)可伸缩性好。这是现代操作系统的主要性能之一。操作系统应能方便地进行定制,扩充或缩减,以适应硬件的快速更新和应用需求的不断变化。微内核可以保证系统有序地增长和演变。另外,随着应用领域的扩大,并非所有的用户都需要有相同的系统功能和使用环境。重要的是将这些可变动的部分做成可选构件,以利于系统规模的扩大或缩小。(4)实时性好。微内核可以方便地支持实时处理。,嵌入式操作系统的体系结构,51,(5)提供多线程机制,支持多处理器的体系结构和分布式系统及计算机网络。(6)系统安全性好。传统

18、的操作系统将安全性功能建立在内核之外,因而它并不是很安全的。而微内核则将安全性作为系统内特性来进行设计。用户级的任务是通过高度安全的通信通道调用的接口传递信息来访问诸如虚拟内存空间,文件及处理器之类的系统资源对象。,嵌入式操作系统的体系结构,52,微内核性能问题:通过微内核构造和发送信息、接受应答并解码所花费的时间比进行一次系统调用的时间多很大程度取决于微内核的大小和功能,嵌入式操作系统的体系结构,53,目前嵌入式操作系统主要采用分层和模块化相结合的结构或微内核结构分层和模块化结合的结构将操作系统分为硬件无关层、硬件抽象层和硬件相关层,每层再划分功能模块。这样移植工作便集中在硬件相关层,与其余

19、两层无关,功能的伸缩则集中在模块上,从而确保其具有良好的可移植性和可伸缩性。而采用微内核结构,则可利用其可伸缩的特点适应硬件的发展,便于扩展。,嵌入式操作系统的体系结构,54,嵌入式操作系统的体系结构,55,嵌入式操作系统的体系结构,56,嵌入式操作系统一般由内核、嵌入式TCP/IP网络系统、嵌入式文件系统等组成。内核 内核是嵌入式操作系统的基础,也是必备的部分。它提供任务管理、内存管理、通信、同步与互斥机制、中断管理、时间管理及任务扩展等功能。内核还提供特定的应用编程接口,但目前没有统一的标准。,嵌入式操作系统组成,57,嵌入式图形用户界面GUI,嵌入式GUI的特点:轻型、占用资源少高性能高

20、可靠性可配置,常用的嵌入式GUI有:MicroWindowsMiniGUIQT/EmbeddedOpenGL,58,嵌入式TCP/IPTCP/IP协议已经广泛地应用于嵌入式系统中嵌入式TCP/IP网络系统提供符合TCP/IP协议标准的协议栈,提供Socket编程接口。,嵌入式网络,59,嵌入式TCP/IP网络系统具有以下的特点:可剪裁:能根据嵌入式系统的功能要求选择所需协议,对完整的TCP/IP协议簇进行剪裁,以满足用户的需要。采用“零拷贝”(Zero Copy)技术,提高实时性 所谓“零拷贝”技术,是指TCP/IP协议栈没有用于各层间数据传递的缓冲区,协议栈各层间传递的都是数据指针,只有当数

21、据最终要被驱动程序发送出去或是被应用程序取走时,才进行真正的数据搬移。,嵌入式TCP/IP,60,采用静态分配技术 在网络初始化时就静态分配通信缓冲区,设置了专门的发送和接收缓冲(其大小一般小于或等于物理网络上的MTU值(包或帧的最大长度),从而确保了每次发送或接收时处理的数据不会超过MTU值,也就避免了数据处理任务的阻塞等待。,嵌入式TCP/IP,61,无线应用协议WAP,62,现场总线,63,无线传感器网络,64,通用操作系统的文件系统通常具有以下功能:提供用户对文件操作的命令提供用户共享文件的机制管理文件的存储介质提供文件的存取控制机制,保障文件及文件系统的安全性提供文件及文件系统的备份和恢复功能提供对文件的加密和解密功能,嵌入式文件系统,65,嵌入式文件系统相比之下较为简单,主要具有文件的存储、检索、更新等功能。它以系统调用和命令方式提供对文件的各种操作,主要有:设置和修改对文件和目录的存取权限 提供建立、修改、改变、删除目录等服务提供创建、打开、读、写、关闭、撤消文件等服务,嵌入式文件系统,66,嵌入式数据库系统,67,嵌入式系统功耗管理,常用的功耗管理技术:动态功耗管理DMP技术动态电压调整DVP技术存储器功耗管理技术,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号