计算机工程应用技术信息与电脑China Computer&Communication2016年第8期基于MDE的分布式实时嵌入式系统分析陈 睿(昭通学院附属中学,云南 昭通 657000)摘 要:随着计算机软件技术的发展,在我国军事、工业生产以及控制等多个领域中,分布式实时嵌入式系统得到广泛应用,分布式实时嵌入式系统开发技术也不断发展。但是,在实际应用中,传统分布式实时嵌入式系统开发方法,已无法满足时代需求,分布式实时嵌入式系统现有组成部分的开发以及更新、集成方法等,都需要继续完善以提高系统调度的有效性,提升系统的可扩展性,应用模型驱动工程(Mode-l driven Engineering,MDE)方法,分析分布式实时嵌入式系统设计,对于提升分布式实时嵌入式系统性能有重要意义。笔者针对传统分布式实时嵌入式系统进行分析,利用MDE方法管理系统,运用模型驱动工程(MDE)方法,管理分布式实时嵌入式系统设计问题,将会发挥重要作用。关键词:QoS;MDE;软件开发;分布式实时嵌入式系统中图分类号:TP311.52 文献标识码:A 文章编号:1003-9767(2016)08-032-03在设计开发分布式实时嵌入式系统时,为降低系统开力,可以积极响应较短时间内的中断,并及时完成多任务的发中的错误,应从多角度选择、合成、配置出合适的系统开操作,提高系统的实用性。发方案,这样可以提高开发分布式实时嵌入式系统内构建合成的重复利用特性,提高系统设计中的可扩展性。开发分布3 基于MDE开发分布式实时嵌入式系统的方法式实时嵌入式系统中,应用实时软件系统的模型驱动工程应用MDE模型理论方法,在开发分布式实时嵌入式系(Mode-l driven Engineering,MDE),可以在系统开发周期,统中,一定要合理规划系统中软件与硬件间的关系,确保分更多地运用构件技术,面向服务,并且还将会贯穿整个系统布式实时嵌入式系统设计质量。开发周期之中,提供有效的系统分析服务质量验证机制。以3.1 满足系统层次化结构下笔者对此做具体介绍。应用MDE模型来设计开发分布式实时嵌入式系统,在1 MDE介绍系统层次化模块结构设计中,实现系统中软件应用程序与底层硬件的结合,使硬件可以依靠软件来完成系统的实时任务。在分布式实时嵌入式系统开发中,应用MDE模型驱动在应用层、物理层、数据链路层设计中,应强化系统编程与工程方法,不仅可以提高系统的服务质量,也可以提升系统人机界面的友好度,并且能够确保部分微处理器与I/O端口的耦合性。MDE模型作为驱动架构,是一个软件开发框架,的完整性,提升嵌入式系统的易控性与可操作性。基于UML标准框架,支持软件设计模型可视化、存储与交换,3.2 系统功能面向对象创建出机器可读的高度抽象模型,并且这些模型将会独立于应用面向对象方法,在分布式实时嵌入式系统设计中,实现技术,以标准化方式储存。MDE通过相关工具,给系统将实时处理技术应用到系统开发中,应用MDE模型实现对开发提供一个规范化独立平台,为系统设计选择一个特定实系统功能的总体规划。面向对象开发程序,同时在分布式实现平台,通过架构性分离,提升系统开发设计的轻便性、互时嵌入式系统设计中,组件可以被视为通过接口向外界提供操作性以及可重用性。服务或者请求服务的黑盒,其中多个组件也可以被组成更高2 分布式实时嵌入式系统特点层次组件,分布式实时嵌入式系统内部的组件,应具备独立性与重用性,从而可以提升嵌入式系统的独立性。在计算机软件设计中,会涉及到分布式实时嵌入式系统3.3 实时调度算法的应用,该系统对系统的硬件以及软件程序都有很强的依赖在分布式实时嵌入式系统中,应用MDE模型,明确系性,并且在设计该系统时,还需要保持系统的实时控制优势。统调度的重要性,可以保证在多任务环境下,完成实时调度在分布式实时嵌入式系统设计中,用缓存机制、动态分配方系统任务。分布式实时嵌入式系统设计中,截止时间优先调式以及预测指令提高软件实时处理功能,使得分布式软件的度算法中,应用RMS调度算法,可调度上限为68%。例如,可靠性得到提升。分布式实时嵌入式系统设计中,嵌入式微在分布式实时嵌入式系统中需要执行3个进程,分别是P1、处理器作为系统的核心,应具备对系统多任务的实时支持能P2、P。作者简介:陈睿(1979-),女,云南昭通人,中学一级教师,研究方向:计算机嵌入式系统设计。— 32 —信息与电脑2016年第8期China Computer&Communication计算机工程应用技术执行周期为3、5、4,在时间单位4时,因为P1的执用静态内存分配方式,为用户提供实时数据信息,实现系统行时限为6,P2的执行时限为10,P3的执行时限为8,所间任务的通信。设置高精度的时钟,负责管理与时间有关的以P1的优先级最高,进程切换到P1;在时间单位6时,因任务,采取计时、时间片轮转调度的方法,应用事件驱动方式,为P1的执行时限为9,P2的执行时限为10,P3的执行时限实现定时中断驱动。并且在嵌入式系统设计中,简化实时任为12,所以P1的优先级最高,进程又再次切换到P1,而非务间的控制流程的设计,使系统内部可共享驱动资源。嵌入P2;在时间单位7时,因为P1的执行时限为12,P2的执行式系统中实时任务调度流程如图2所示:时限为10,P3的执行时限为12,所以P2的优先级最高,进程切换到P2。后续流程以此类推。可达截止期最早优先算法,也可以应用EDF算法是最优的单处理器动态调度算法,其可调度上限为100%。 d1=d−(t+E−p)≥04 应用MDE开发分布式实时嵌入式系统的方法在开发分布式实时嵌入式系统时,应用MDE模型,有助于提高系统应用性能与服务质量,提升嵌入式系统的可扩展性,使系统可以在实际中稳定运行。以下在智能手机的分布式实时嵌入式系统开发中,应用MDE模型方法,对系统开发设计的整个过程进行分析,具体内容如下。4.1 分布式实时嵌入式系统MDE模型框架在分布式实时嵌入式系统开发设计中,基于硬件与软件开发,将会涉及到如数字信号处理器、微机保护系统、IO设备、C++语言、ARM系统等多个部分,设计出MDE模型框架,如图1所示:图2 算法流程图4.4 系统软件设计分布式实时嵌入式系统设计中,应划分清楚系统中任务间的职责,并且赋予每个任务独立唯一的地址,采用优先级图1 MDE模型框架4.2 系统硬件设计调度的模式,提高分布式实时嵌入式系统对事件的响应时间。分布式实时嵌入式系统中,也应尽量避免软件设计与硬件设在分布式实时嵌入式系统硬件设计中,分布式实时嵌入计结构间脱离,提高软件系统实时性。以下是基于MDE的式系统的处理器,应具备多任务响应能力,同时也应具备很分布式实时嵌入式系统软件代码。强存储能力与可扩展性,降低功耗。应用AT91RM9200处理分布式实时任务调度中,可以使用RMA_Feasible函数,器,同步控制事件突发访问,提高系统响应时间。同时,在循环查询判断任务的调度状态:系统中各个功能模块的设计中,应确保系统各模块接口的耦合性,实现系统硬件与软件之间的交互。template
4.3 分布式实时系统驱动设计struct check_i;系统驱动设计中,应用虚拟存储管理机制管理内存,采template struct check_i, m, i> — 33 —计算机工程应用技术信息与电脑China Computer&Communication2016年第8期{Result = (t > 0) && ( sum_j::Result <= t|| task_enum { task_result =feasible::Result ) };task_feasible,i>::Result,}; Result = check_i,m,i+1>::Result4.5 取得的成果&& task_result }; 运用MDE模型设计开发分布式实时嵌入式系统,将其};应用到系统开发设计的整个过程之中,不仅可以提升系统实template 时调度的准确性,同时也可以提升系统的可扩展性,使得系struct check_i, m, m> 统在后续维护中更方便。同时基于MDE的分布式实时嵌入{式系统,提高时钟中断程序精度,提高任务相应时间,较传enum { Result = task_feasible,统分布式实时嵌入式系统有极大改进,值得在实际分布式实m>::Result };时嵌入式系统开发中推广。};template 5 结 语struct RMA_Feasible 综上所述,在分布式实时嵌入式系统设计中,利用MDE{方法管理系统发展的整个过程,不仅可以解决系统需求同系enum { m = Length::value,统开发脱节的问题,也可以利用MDE方法,渗入到分布式Result = check_i::Result };系统开发整个生命周期内,满足分布式实时嵌入式系统开发};中需求,提升分布式实时嵌入式系统的性能,具有实际应用判断系统实时任务调度成立核心算法代码:价值。template struct sum_j { 参考文献typedef typename TypeAt::Result J;[1]胡华平,张文强,金士尧.分布式实时系统测试平台enum { Cj = J::cost, 的研制[J].测控技术,2000(2):55-58.Tj = J::period, [2]毛羽刚,金士尧.分布强实时系统的可预测性研究[J].my_result = Cj * ((t%Tj > 0 ? 1 : 0) + (t / Tj)),计算机研究与发展,2000(6):661-667.Result = sum_j::Result + my_result };[3]董剑,左德承,刘宏伟,等.一种基于无效链路的分布}; 式故障诊断一致性协议[J].计算机研究与发展,2007(6):914-template 923.struct get_t { [4]贾文涛,张春元,付剑,等.一种高可靠双机enum { Ti = TypeAt::Result::period,温备星载计算机的设计与实现[J].计算机研究与发Tk = TypeAt::Result::period,展,2010(S1):127-132.num_l = Ti/Tk,[5]胡华平,金士尧.分布式系统可靠性模型[J].计算机Result = (t_ix >= num_l) ? 工程与应用,1999(8):1-3.get_t::Result : (t_ix + 1) * Tk };};[6]孙燕,田俊峰,王凤先.分布式冗余管理系统可靠性template 的设计与实现[J].计算机工程与应用,2003(15):140-142.struct task_feasible {[7]沙静,杜玉越.模型驱动工程在分布式实时嵌入式系typedef get_t t_type;统QoS评价中的应用[J].计算机应用,2012(12):71-72.enum { t = t_type::Result,— 34 —