天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt

上传人(卖家):三亚风情 文档编号:2748421 上传时间:2022-05-23 格式:PPT 页数:75 大小:1.92MB
下载 相关 举报
天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt_第1页
第1页 / 共75页
天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt_第2页
第2页 / 共75页
天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt_第3页
第3页 / 共75页
天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt_第4页
第4页 / 共75页
天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt_第5页
第5页 / 共75页
点击查看更多>>
资源描述

1、天脉2嵌入式实时操作系统入门培训教程2目录核心操作系统和分区调度3分区操作系统和进程调度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述2应用移植83ARINC653标准(一)ARINC653标准是什么? ARINC Specification 653, Avionics Application Software Standard Interface, Supplement 2. ARINC653是一个用于现代飞机综合化航电系统(IMA)的应用执行标准。联合方式航电综合化航电系统 (IMA)航空数据计算机飞行管理系统航空数据计算机 飞行管理系统 具有分区功能的操作系统ARINC

2、 4294ARINC653标准(二)联合方式航电飞行控制系统飞行管理系统惯性导航系统显示系统导航计算机任务计算机发动机控制系统发动机监控系统火控系统武器控制系统存储管理系统目标计算机雷达系统传感器系统前视红外雷达5ARINC653标准(三)综合化航电系统雷达系雷达系统统传传感器系感器系统统前前视红视红外雷达外雷达武器控制系武器控制系统统存存储储管理系管理系统统显示系统发动发动机控制系机控制系统统发动发动机机监监控系控系统统火控系火控系统统飞行控制系统飞行管理系统惯性导航系统6ARINC653标准(四)q目的:解决由于综合化、模块化带来的故障隔离问题。q定义:航电计算机操作系统与应用的通用接口;

3、q作用:标准服务接口,包括:控制调度、通信和获得内部处理单元的信息等;q目标:应用软件可独立开发,运行在同一硬件平台上。ARINC653标准(五)q分为4个部分:lPART 1-Required Services:基本服务lPART 2-Extended Services:扩展服务lPART 3-Confirmity Test Specification:符合性测试规范lPART 4-Subset Services:受限制的服务子集。ARINC653标准(六)qPART 1提供的标准服务接口:l分区管理(2个)l进程管理(14个)l时间管理(5个)l存储管理l分区内通信(23个)l分区间通信(

4、10个)l健康监控(4个)9目录核心操作系统和分区调度3分区操作系统和进程调度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述2应用移植810ACoreOS653基本描述信息描 述名称天脉2机载嵌入式实时操作系统代号ACoreOS653主要功能支持分区管理和调度、分区间通信、健康监控管理、进程管理、时间管理等功能.开发语言C 语言/汇编开发平台LambdaAE 运行平台支持机载常用的Intel 80486及以上系列单核处理器和PowerPC 6xx、7xx、74xx、85xx单核处理器为目标机代码规模 20余万行软件版本V1.0.0重要度等级 关键11ACoreOS653操作系

5、统特点技术特征技术特征强实时性l中断可嵌套,响应快速中断可嵌套,响应快速lAPPSAPPS实现分区可抢占实现分区可抢占l分区内进程优先级抢占分区内进程优先级抢占l分区按时间表调度分区按时间表调度lWorkWork任务预防阻塞任务预防阻塞可靠性l基于基于MMUMMU的空间隔离的空间隔离l可预防故障蔓延可预防故障蔓延l提供健康监控机制提供健康监控机制l提供错误处理动作提供错误处理动作l强化鲁棒性设计强化鲁棒性设计安全性l按按DO-178B ADO-178B A级要求开发级要求开发l编码符合编码符合GJB 5369- 2005GJB 5369- 2005l开展开展FTAFTA和和FMEAFMEA分析

6、分析确定性l静态空间配置分配静态空间配置分配l分区调度时间可配置分区调度时间可配置l分区间通信可配置分区间通信可配置l故障处理可配置故障处理可配置l系统运行资源可配置系统运行资源可配置充分验证l基于需求的测试基于需求的测试l失效场景测试失效场景测试l开展开展MC/DCMC/DC测试测试l典型机载设备地面试验典型机载设备地面试验验证和试飞确认验证和试飞确认适应性l支持机载常用处理器支持机载常用处理器l三层栈支持可升级三层栈支持可升级l支持机载常用功能组件支持机载常用功能组件l支持系统、分区级和进程支持系统、分区级和进程级三级调试级三级调试l可裁剪、可定制可裁剪、可定制12ACoreOS653体系

7、结构模块支持层 核心操作系统(CoreOS) 可配置组件 文件系统运行时库BIT管理分区操作系统(PartitionOS) 分区操作系统(PartitionOS) 分区操作系统(PartitionOS) 分区操作系统(Vthread OS) 分区操作系统(Posix OS) 分区应用1分区应用2分区应用3分区应用4分区应用5分区1分区2分区3分区4分区5调度表管理健康监控分区时/空管理配置数据虚中断管理分区间通信进程管理通信管理时间管理虚中断管理13基本概念(一)q分区l软件运行的逻辑单元,包括:软件运行所需的空间资源、时间资源以及分区本身所需具备的资源;l分区包括u空间分区u时间分区14基本

8、概念(二)q进程l分区中程序单元l周期、非周期l分区资源q应用l分区中运行的软件l分区-房间 、应用-人q虚中断l紧急事件通知机制15基本概念(三)q配置数据l配置整个系统的属性q调度表l多个分区运行时序、运行时间、频率q系统调用l应用分区请求核心操作系统提供服务的机制q共享数据区l分区之间确定性存储器共享的机制16功能组成17模块支持层qCPU体系结构支持包qBIT测试q映像管理q系统级通信代理q系统级调试代理q模块支持层故障处理18核心操作系统q运行在系统态q主要实现l分区的管理和调度l分区间通信l系统的故障监控l系统内资源管理l设备管理l中断/异常管理19分区操作系统q运行在用户态q驻留

9、于每个分区q主要实现l分区内进程管理和调度l分区内资源管理20可配置组件qC运行时库qC+运行时库qBIT管理q文件系统q分区级调试代理q任务级通信代理21目录核心操作系统和分区调度3分区操作系统和进程调度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述2应用移植822核心操作系统功能(一)q提供单个CPU目标平台的资源管理和分区时空管理q将应用隔离到不同的分区l系统所有地址空间全部在配置时确定q分区管理和创建l分区创建为内部接口(基于确定性和安全性)q根据配置表为每一个分区分配执行时间q实现分区的轮转调度23q管理分区间通信q为分区操作系统提供系统调用服务q模块级/分区级健康

10、监控q配置记录的加载和存储q共享数据区q管理所有共享的资源l中断/异常l系统时间l内存lI/O服务核心操作系统功能(二)24核心操作系统-存储器保护(一)q使用存储器MMU单元l逻辑地址和物理地址的转换l空间访问权限的定义l创建多个MMU存储器上下文(核心操作系统上下文空间、每个分区独立的上下文空间)q分区之间的隔离保护l每个分区的逻辑地址空间相同(可配置)l通过分区独立的上下文空间映射到不同的物理地址q分区和核心操作系统的隔离保护l核心操作系统上下文空间l系统态可访问25核心操作系统-存储器保护(二)q使用存储器MMU单元完成其他功能l向量表的保护l核心操作系统的任务栈保护l核心操作系统的中

11、断栈保护l分区操作系统的进程栈保护l分区之间共享数据区的访问权限设置26核心操作系统-任务调度q任务功能l分区/模块级健康监控l驻留于核心操作系统的代理功能l分区操作系统l其他核心操作系统功能和用户自定义功能q任务和分区的关系l任务跟随分区调度l任务跟随核心操作系统调度l指定任务执行所占用的时间窗口27核心操作系统-分区状态定义q冷启动态q热启动态q空闲态q正常态分区状态转换图分区状态转换图28核心操作系统-分区重启动q分区重启动的分类l 冷启动以COLD_START为参数调用SET_PARTITION_MODEl 热启动以WARM_START为参数调用SET_PARTITION_MODEq冷

12、/热启动的区别l 冷启动将重新复制分区的代码段,重新复制分区及共享库的数据段、只读数据段、永久数据段,重新初始化分区及共享库的BSS段、永久BSS段l 热启动只复制分区及共享库的数据段,重新初始化分区及共享库的BSS段29核心操作系统-分区调度(一)q调度策略l时间调度表(XML文件配置)l可定义256个调度表l通过程序完成调度表的切换l最小时间窗口是100微秒l时间窗口和系统时钟TICK的关系(向上取整)l分区没有优先级q核心OS中与分区关联的任务在本分区的时间窗口内执行30核心操作系统-分区调度(二)q在一个主时间框架内,可以对分区进行多次调度 31核心操作系统-分区调度(三)q多调度表l

13、 缺省调度表q多调度表切换l 下一主时间框l 下一时间窗口l 下一时钟tickq调度表切换动作冷启动热启动挂起忽略32核心操作系统-虚中断(一)q分区响应核心操作系统紧急事件q由核心操作系统向指定分区发送q8种虚中断类型l VT_EVENT_RELEASE_POINT(周期进程释放点)l VT_EVENT_WARM_RESTART(热启动)l VT_EVENT_USER(用户扩展)l VT_EVENT_CLOCK_TICK(时钟)l VT_EVENT_SC_COMPLETE(阻塞性系统调用)l VT_EVENT_UC_RAPHSODY(RHAPSODY代理)l VT_EVENT_DEBUG(其

14、他事件,用于操作系统扩展)l VT_EVENT_EXTEND33核心操作系统-虚中断(二)q响应虚中断时机q响应方式qAPI接口l 虚中断注册STATUS vIntEventHandlerRegister ( VT_EVENT_HANDLER handler)34核心操作系统-系统调用(一)q分区操作系统和应用软件(用户态)可通过系统调用对核心操作系统(系统态)进行访问;l为分区操作系统提供统一的系统调用入口访问核心操作系统l为应用软件提供专用的系统调用服务访问核心操作系统q系统调用由核心操作系统进行分类、分派。35核心操作系统-系统调用(二)q系统调用的划分l 阻塞性系统调用l 非阻塞性系统

15、调用q提供系统调用扩展能力36核心操作系统-共享数据区q共享数据区l 共享内存区 需要核心操作系统为其分配物理地址空间l 共享IO 需要分区及核心操作系统共同访问的IO空间37目录核心操作系统和分区调度3分区操作系统和进程调度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述2应用移植838分区操作系统(一)q分区操作系统以共享库方式存在l 代码段为所有分区共有l 每个分区有自己的数据拷贝q运行在用户态q每个分区都存在一个分区操作系统q应用程序可以通过系统调用,请求核心操作系统服务39分区操作系统(二)q功能l 进程管理和调度(优先级抢占调度)l 系统对象管理(信号量,缓冲,事件

16、等)l 分区内堆管理(malloc)(可以通过配置禁止或者使能)l 运行时库(C库,数学库,标准输入输出库,APEX,VThreads)l 软看门狗定时器l 进程级健康监控40分区操作系统(三)q提供支持APEX接口的分区操作系统q分区操作系统使用的所有空间分配均在应用分区的空间内分配q所有对资源的申请,都在分区初始化过程中进行q中断和异常l 分区操作系统处理虚中断l 异常由核心操作系统统一分派41分区操作系统-进程(一)q分区操作系统调度的单元是进程q调度策略l 优先级抢占优先级范围0-63不同优先级进程,优先级高的进程先运行同优先级进程,采取先来先服务策略对于同优先级进程,若当前占用CPU

17、的进程不释放处理器时间,则其他同等优先级以及低优先级进程将永远得不到执行l 时间片轮转缺省禁止42分区操作系统-进程(二)q进程栈保护l 在进程栈顶通过使用保护页机制实现栈溢出保护l 根据分区需求,在XML配置文件中设置保护页的数目;l 保护页仅仅是系统态可R/W访问的:因为进程运行在用户模式,任何对保护页的访问导致数据访问异常q限制:l 栈下溢是不可检测的l 栈溢出过大时,可能会越过保护页而不被检测到43分区操作系统-进程(三)q进程状态l 休眠态:进程已经创建,但不具备竞争CPU的权利。进程在启动前和停止后处于该状态l 就绪态:可以调度、准备执行的进程,该进程一旦获得CPU的控制权就能执行

18、l 运行态:拥有CPU控制权并正在执行的进程。l 等待态:由于资源条件未满足,暂无资格竞争CPU的控制权,当等待条件满足后,可转换到其它状态。进程可能由于以下原因处于等待态:等待一定的延迟时间、等待信号量、等待进程周期到、等待事件、等待消息、等待解挂44分区操作系统-进程(四)q基于优先级的抢占高优先级任务A中等优先级任务B低优先级任务C优先级事事件件事事件件事事件件时间同同等等优优先先级级的的进进程程相相互互之之间间不不会会抢抢占占45分区操作系统-进程(五)q时间片轮转调度46分区操作系统-进程(六)q时间片l 允许进程在时间片到达时,抢占正在运行的与其优先级相同的进程;kernelTim

19、eSlice(ticks):(如果ticks为0,时间片轮转禁止)l 优先级调度用于不同优先级进程之间的调度,时间片轮转调度仅用于相同优先级进程的调度;l 基于优先级的重调度可以在任何时刻发生,时间片轮转重调度每间隔若干tick发生。47分区操作系统-进程(七)q进程上下文切换l 当一个进程停止运行,一个新的进程启动时,发生上下文切换 当前进程的上下文被存储到自己的TCB中 新启动进程的上下文从TCB中复制到CPU中l 一个OS调用或者虚中断可能导致上下文切换48分区操作系统-分区内通信(一)q缓冲l 缓冲提供进程间的排队消息l 可按先进先出或优先级进行排队l 每个消息可携带不同的数据,传送时

20、不允许覆盖l 消息缓冲区中可存放消息的数量由创建缓冲时给定的大小决定49分区操作系统-分区内通信(二)q黑板l 通过黑板,可以将消息发布给分区内的所有进程l 黑板上的消息是当前的最新消息,除非被清除或被新消息所覆盖,或者黑板中未发布任何消息l 黑板消息不可排队,可进行覆写l 任何时刻都允许写黑板消息的进程发送消息l 任何时刻都允许读黑板消息的进程访问黑板消息50分区操作系统-分区内通信(三)q信号量l 提供对资源的受控访问,用于进程间的同步和互斥l 两种信号量:计数信号量和互斥信号量l 计数信号量功能与标准一致,用于多个资源的互斥访问l 互斥信号量作为扩展功能,既可以实现同步,也可以实现互斥,

21、且可以嵌套访问51分区操作系统-分区内通信(四)q事件l 事件是针对进程的,它可以把某种情况的发生告知给等待进程l 一个事件标记被进程(或ISR)用来通知其他进程事件的发生l 进程可以同时等待超过一个以上的事件,事件相互之间是独立的。l 事件不排队、不携带或传输数据52目录核心操作系统和分区调度3分区操作系统和进程调度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述2应用移植853分区间通信(一)qARINC653规范定义的、分区之间通信的唯一方式同一模块内分区间不同模块分区间分区与设备间q通过消息(数据实体)、端口及通道实现q消息发送方式1:1方式1:N方式q通信模式:队列、

22、采样、服务访问点q端口和通道连接关系,通过XML配置文件进行配置q端口对于用户是可见的,而通道则是逻辑的、透明的,可配置但是不可直接操作54分区间通信(二)q通道l 定义一个源到一个或者多个目的之间的逻辑连接l 通道在核心OS启动时创建,通过XML配置定义通道l 通道上指明发送端口及其所属分区,及接收端口及其所属分区55分区间通信(三)56分区间通信(四)q队列模式l 此模式下端口的运行方式与消息队列类似l 等待进程以先进先出或优先级方式进行排队l 如果接收端口为空则接收者等待q适用范围l 适用于需要连续数据的通信方式57分区间通信(五)q采样模式l 此模式下端口的运行方式与共享存储区相似l

23、接收者不会以等待方式读数据l 新消息覆盖原有消息l 数据一致性可以保证q适用范围l 适用于需要最新数据的通信方式58分区间通信(六)q服务访问点模式 (Service Acess Point )l 一种特殊的队列端口,与普通队列端口的区别在于使用这些端口发送和接收消息时包括地址信息(IP地址和端口)q适用范围l 适用于以太网通信(AFDX)59分区间通信(七)q虚分区l 不是实体分区l 不存在代码和数据l 为模块间通信配置使用q虚端口l 隶属于虚分区l 虚端口对应外部设备l 需用户提供设备驱动程序与外部通信60分区间通信(八)q分区间通信方式61目录核心操作系统和分区调度3分区操作系统和进程调

24、度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述2应用移植862健康监控(一)q为提高系统健壮性,操作系统提供健康监控机制,用于监控应用软件、操作系统和硬件的故障。q健康监控与错误分级:l 进程级l 分区级l 模块级63健康监控(二)q某一级别处理不了的错误,会逐级上报至更高级别的健康监控进行处理。q处理原则:l由该级别对应的健康监控任务或更高级别的健康监控任务处理;l高级别系统模式(如:模块模式)下发生的故障,不应由低级别健康监控(如:进程级健康监控)处理。64健康监控(三)q进程级HMl 在分区内处理进程相关的错误和事件,包含于分区内l 调用CREATE_ERROR_HA

25、NDLER()注册应用错误处理进程l 进程级健康监控不是必须,进程级错误响应和恢复动作为应用驱动。q进程健康监控所占用时间l仅占用本分区的时间窗口q进程级可检测的故障l截止期超时、应用错误、数字错误、非法请求、栈溢出、内存访问违反、硬件故障、电源故障65健康监控(四)q分区级HMl 用于处理分区内影响分区OS运行的错误及事件;l 分区级健康监控作为核心OS任务来运行,其优先级要高于与分区OS相关联的核心OS任务。l 存储空间及任务上下文属于核心OS;q分区级健康监控所占用时间l 仅在所隶属分区的时间窗口执行,占用该分区的执行时间,不会影响其他分区的执行时间66健康监控(五)q模块级HMl 模块

26、级健康监控是核心OS中唯一拥有最高优先级的任务,其优先级要高于分区健康监控任务,一旦激活,将首先执行q模块级健康监控所占用时间l 抢占分区时间窗口,且可以先于所有分区、分区HM及核心OS任务运行67健康监控(六)q分区级HM和模块级HM均为表驱动l 由系统集成者在XML配置记录中定义l 每个故障代码对应一个处理程序q健康监控动作定义68目录核心操作系统和分区调度3分区操作系统和进程调度4分区间通信5健康监控6ARINC653标准1天脉2操作系统概述269应用移植(一)q应用移植流程l系统分析l板级支持包软件移植l移植低层驱动软件l应用配置记录的移植l单分区应用移植l多分区进行集成l开展集成测试

27、70应用移植(二)q第一步:进行系统分析l处理器、编译器l板级支持包l外设和驱动软件l文件系统l软件构成及功能划分l通信方式选择71应用移植(三)q第二步:板级支持包软件移植l串口l中断控制器l以太网l定时器l目标操作系统能正常运行,开发环境下载及调试功能正常72应用移植(四)q第三步:移植低层驱动软件l驱动部署层次核心OS分区OSl通信方式端口通信共享IOl功能测试73应用移植(五)q第四步:应用配置l已有类似配置?l内存空间lIO空间l调度l通信l健康监控74应用移植(六)q第五步:单分区应用移植l以分区为单位,逐个移植分区应用l编译器编译选项l接口适应性更改或适配l完成编译链接l单分区运行75应用移植(七)q第六步:多分区进行集成l将移植后的多分区进行集成l配置数据l分区和进程调度l分区间通信

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

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(天脉ACoreOS嵌入式实时操作系统-ppt课件.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|