ReWorks嵌入式实时操作系统和ReDe嵌入式软件开发环境Word文档下载推荐.docx
《ReWorks嵌入式实时操作系统和ReDe嵌入式软件开发环境Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《ReWorks嵌入式实时操作系统和ReDe嵌入式软件开发环境Word文档下载推荐.docx(6页珍藏版)》请在冰豆网上搜索。
本文从技术角度对ReWorks/ReDe的结构、功能和特点作简要介绍。
2ReWorks嵌入式实时操作系统
嵌入式实时操作系统位于嵌入式硬件和嵌入式应用软件之间,为上层应用提供基础服务,是信息家电、信息终端等嵌入式应用产品的核心和灵魂,应用系统的功能实现、实时性能、安全可靠在很大程度上依赖于操作系统的支持。
ReWorks/ReDe采取宿主/目标机的体系结构,如图1所示:
图1ReWorks/ReDe的宿主/目标机体系结构
(1)系统结构
ReWorks采用微内核及组件技术,能根据应用需要对操作系统内核进行配置、裁剪、扩展与定制,具备较强的伸缩能力。
其中,微内核提供强实时调度、基本内存管理、时钟管理、中断管理等功能,核心组件提供定时器、区域、分区、信号、事件、信号量、消息等可裁剪功能。
这种微内核、层次化组件结构决定了其固有的模块化特性,为提高系统的升级维护能力、目标处理环境适应能力以及系统的扩展能力等提供了基础保障。
(2)ReWorks的强实时性
ReWorks提供实时多任务管理机制,支持基于优先级的可抢占调度、时间片轮转调度以及速率单调算法等任务调度策略和技术。
对于可抢占调度,高优先级的任务可随时打断低优先级任务的运行,抢占点不仅包括应用程序,也包括大部分内核程序,见图2。
同时针对关键任务,允许任务的排他性运行,一旦其进入运行状态,其它优先级更高的任务也不能抢占调度,直至该任务被阻塞或运行完成。
这种调度模式可以最大限度地保证关键任务的截止时间得到满足。
时间
图2内核可抢占的优先级调度
对实时系统中周期性任务,ReWorks实现了单调速率调度算法,它具备周期性任务的可调度性分析能力,保证系统即使在短暂的超载情况下,不会超过各实时任务的截止时间,确保系统行为的可预见性。
中断响应时间是系统实时性的关键指标。
ReWorks采用了核心可抢占设计,并提供中断处理和任务的关联机制,使主体的中断处理任务可运行于用户空间,提高了系统的可靠性,同时减少中断嵌套层次以及系统的临界区,缩短中断延迟时间。
(3)ReWorks的标准化接口
开放标准是实现软件复用和互操作的一种重要方法。
ReWorks提供符合POSIX实时扩展标准的编程接口,从而大大提高了源代码级的软件可移植性。
为ReWorks操作系统编写的程序,可以在任何其它的POSIX操作系统上编译执行,反之亦然。
图3ReWorks的源代码级软件可移植性
另一方面,ReWorks通过对市场上应用较多的美国风河公司VxWorks操作系统调用接口及相关宏定义的封装,在应用层上实现了VxWorks源代码级兼容。
同时参照VxWorks驱动框架,实现了VxWorks驱动的二进制兼容。
(4)ReWorks的可靠性
ReWorks采取存储域管理技术来提高系统的可靠性。
ReWorks存储域管理建立在硬件MMU基础之上,通过分页技术实现内存的保护映射。
同时,通过对MMU的抽象,使接口实现与具体的硬件特性无关,保证ReWorks能够顺利移植到其他硬件平台,包括对不具备MMU能力的硬件平台的支持。
此外,为保障实时性,ReWorks存储域管理采用了存储域物理空间预分配技术,避免缺页中断,并且页表以写保护模式存储在核心域中,从而在页表得到安全保障的情况下,减小了存储域切换延迟。
基于存储域保护,ReWorks通过在栈边界设置隔离墙,实现了任务栈的溢出监测,当栈溢出时将该任务隔离,保证域内其他任务的正常运行。
3ReDe嵌入式软件开发环境
嵌入式系统体积较小、资源有限,因此需要在通用的宿主平台上建立一个嵌入式软件开发环境,旨在为嵌入式软件的开发提供从设计、编程、调试、仿真运行到测试的全过程支持,保证应用系统的开发效率和软件质量。
在开发完成后,目标代码被加载到嵌入式目标环境上进一步调试。
最后,才固化到硬件中完成嵌入式产品。
由于这样的交叉开发模式,大多数嵌入式操作系统都配有宿主机端的开发环境。
ReDe是为ReWorks提供的嵌入式软件开发环境,其基本功能包括系统配置、源程序编辑、交叉编译、连接、远程调试、系统仿真、目标代码下载和固化等。
随着嵌入式开发人员对第三方工具的利用越来越普遍,要求嵌入式软件开发环境具有良好的可扩展性。
ReDe3以Eclipse开放平台架构为基础,结合嵌入式软件开发的特点,实现了Eclipse的定制改造和工具链扩展,支持与其他商用CASE工具无缝集成,具有开放性、跨平台、一体化等特点。
ReDe3的体系结构如图4所示:
图4ReDe3体系结构
(1)基于模型的软件设计
由于嵌入式软件规模和复杂度不断提高,嵌入式软件的开发已进入自动化、模型化阶段。
ReDe3集成了第三方CASE工具Rhapsody,可使用UML语言建立软件模型,自动生成C/C++等语言的源代码,提供完整的系统流程图、标准化的软件说明文档,并对系统功能进行模拟仿真。
Rhapsody是一个基于UML支持实时嵌入式系统全过程面向对象开发的CASE工具,它借助内置的OXF框架实现从系统的分析、模型设计、代码自动生成到测试用例生成的开发过程自动化。
OXF框架是面向对象和跨嵌入式操作系统平台的,ReDe3提供了基于ReWorks操作系统的OXF接口实现,使得ReDe3可以方便地将通过Rhapsody设计的模型转换成ReWorks的应用程序代码,进而为用户设计ReWorks应用提供了实时设计建模手段,并切实提高开发效率和可维护性。
(2)系统配置
ReDe3针对ReWorks高度可裁剪和可配置的特性,采用XML对可配置组件进行可视化描述,支持裁剪配置关联感知,实现系统配置与资源管理。
用户可根据应用需求对操作系统核心及其组件进行细粒度配置,使系统达到最优化,适应从深嵌入系统到复杂的高端实时系统的环境特点。
(3)系统仿真
为实现嵌入式系统软硬件并行设计开发,提高开发效率,ReDe3提供了指令级仿真器ReSim,支持目标机的指令、外部设备接口的仿真,确保在宿主机上开发的嵌入式软件能够适应目标机硬件环境。
ReSim使开发人员在目标硬件可供使用之前,就能进行应用程序的开发、调试和测试,减轻嵌入式应用软件开发对目标硬件平台的依赖性,从而缩短产品开发周期,降低产品开发成本。
(4)图形应用开发
随着嵌入式技术的发展和应用领域的拓展,可视化的图形界面已成为改善用户使用体验、提高产品易用性的重要手段,ReWorks实现的轻量级、高性能图形系统对数字电视电子节目指南、嵌入式浏览器、嵌入式地理信息系统等复杂图形应用提供了良好的支持。
ReDe3/ReUI为应用开发提供了“所见即所得”的快速图形开发工具及定制性强、稳定可靠的图形库。
ReUI提供丰富的中文化图形控件和绘图函数,支持可扩展的窗口管理及对话框、按钮、文本编辑框、滚动条等控件,支持高效的点、线、区域、图形、图像等处理。
针对领域应用,ReUI提供复用性强的实用控件,如数字仪表、图表分析、轨迹标绘、导航指示等。
ReUI采用基于FrameBuffer技术的高效图形处理引擎,支持高分辨率图形显示(32位真彩色)。
同时,ReUI以共享库方式提供窗口对象控件,具有良好的可裁剪性以及可扩充性,用户可以根据应用需求选择窗口部件或者绘图函数,也可以根据需要自行扩充控件。
在中文处理方面,ReUI提供轻型汉字GUI控件,支持GB2312/Unicode编码显示处理,支持多种点阵、矢量字库。
同时,ReUI提供标准的中英文输入模块接口,可挂接拼音、五笔、手写识别等多种中英文输入法。
在开发过程中,ReUI支持GUI控件拖拉操作,并保证GUI元素在开发时与运行时显示风格完全一致,达到了“所见即所得”的效果。
同时,ReUI具有良好的兼容性,通过ReUI生成的代码能够方便地移植到不同的目标系统上。
4结束语
ReWorks操作系统实现了完善的操作系统功能,提供工业标准的POSIX实时扩展接口和市场广泛使用的VxWorks兼容接口。
同时,ReWorks完全自主开发,拥有自主核心技术,可以针对应用的特殊需要进行定制和扩展。
因此,采用ReWorks操作系统,可以提高相关产业产品的研发效率,增加产品的功能密度,提高应用层面的自主创新能力。