论文部分内容阅读
近年来嵌入式领域得到了迅猛发展,嵌入式系统已经无处不在,嵌入式系统的开发也变得越来越复杂,软硬件的复杂度都大幅度增加。而市场对于嵌入式系统的开发周期要求也越来越高,这对于嵌入式开发工具提出了新的挑战,嵌入式开发工具正呈现平台化和开源化的趋势,Eclipse是一种开放源集成化开发平台,以其他开发平台相比,它最大的优点就是它的插件式体系结构,不同的用户可以根据需求开发出自己的工具组件,并和原有的工具实现无缝的连接,非常灵活,极大提高了开发工具的使用效率,这对于嵌入式开发来讲尤其重要,在这种情况下,一些著名的嵌入式开发工具提供商,都开始提供基于Eclipse平台的开发工具,如风河公司的Workbench,ARM公司的RVDS等等。本文所基于的项目Event Viewer是RVDS(RealView Development Suit)集成开发环境的一部分,由武汉理工大学英蓓特嵌入式研发中心开发,实现此系统的目的在于向使用ARM核的最终用户提供采集并显示ARM核跟踪数据的功能,向第三方产品提供商提供扩展接口的功能,以方便第三方产品提供商产生自定义的跟踪数据。这里所说的第三方产品提供商,是指在ARM核的基础上进行功能扩展的公司或个人。最终用户是指直接使用ARM核或者在第三方产品提供商提供的产品基础上进行软件开发的相关人员。论文主要工作如下。(1)介绍了嵌入式开发的特点和嵌入式工具的现状,说明其平台化和开源化的发展趋势,在分析OSGI(Open Service Gateway Initiative)规范的基础上,详细阐述了基于此架构的Eclipse平台的体系结构及其插件扩展的工作机制。(2)结合某嵌入式工具项目的具体需求,完成了一个基于Eclipse平台的插件式嵌入式开发辅助工具的整体设计,包括其整体架构、模块划分、扩展设计等等。(3)实现了项目的RDS(Row Data Source)模块,使用SWIG(SimplifiedWrapper and Interface Generator)工具对基于ARM核的RealView设备调试接口RDDI进行了JNI封装,接收目标板跟踪数据,采用多线程机制,解决了数据流接收的实时和同步问题,同时合理运用设计模式,实现了状态监听、模式切换的功能。(4)对RDS模块的必要功能进行了抽象,在此基础上设计了RDS接口,定义了RDS扩展点,供第三方用户扩展使用,借鉴Eclipse开发的公平竞赛法则(Fair Play Rule),在开发过程中完成了对接口的测试。