基于Eclipse平台的实时软件研究与设计
详细信息    本馆镜像全文|  推荐本文 |  |   获取CNKI官网全文
摘要
随着嵌入式领域的迅猛发展,嵌入式系统得到了广泛应用,系统软硬件的复杂性也不断提高,特别对实时性提出了更高的要求。考虑到嵌入式系统的应用环境和对象,例如:航空航天、军事设施、医疗器械等,一旦实时系统出现问题,所造成的后果将是灾难性的。实时系统在嵌入式开发领域中属于风险最大、难度最高。近些年在软件应用开发领域,软件实时技术也得到了长足的发展,例如:即时通信、检索、条码、无线射频等技术。因此,如何设计高效和高质量的实时软件,成为软件发展领域一个重要课题。
     本文通过武汉理工大学英蓓特嵌入式系统研发中心开发的RealView Event Viewer项目,研究了实时软件如何与Eclipse平台进行结合。它作为ARM的嵌入式集成开发环境RVDS的组成部份,向使用ARM Core的用户提供对内核跟踪数据进行采集、分析和展示功能,并提供第三方扩展的功能。
     本文首先对课题所涉及的相关技术进行了论述。包括实时概念,实时软件的特点,设计原则和方法;Eclipse平台结构及其插件开发技术等。
     其次,本文在研究实时软件的基础上,结合Event Viewer软件的需求,对软件进行了总体设计和模块划分。详细论述了各个模块的功能和设计。
     然后,本文着重研究了数据展示界面的Overview功能的设计与实现。Overview以图片的形式集中展示了所有数据展示界面的运行情况。结合课题项目中多处使用到的JAVA里的JNI技术,研究并实现了如何在Windows操作系统下实现计算机应用程序窗口的快照功能。
     允许第三方扩展是本软件的一大特点。第三方产品提供商按照软件所定义的扩展接口进行扩展,开发自己的数据流处理工具,以插件的形式无缝集成到Eclipse或RVDS下。本文接着详细介绍了扩展点的定义与设计,并从插件的总体架构出发,指导第三方产品提供商如何开发自己的工具。
     本文最后对课题项目开发过程中所使用的测试技术和方法进行了总结,并对测试发现的问题进行了分析。
Embedded systems are widely used with the rapid development of embedded field. Hardware and software complexity is also rising, particularly a higher requirements for real-time feature. Taking the embedded systems application environment and objects into account, such as aerospace, military facilities, medical equipment, etc. Once the real-time system is out of order, the consequences will be catastrophic. The real-time system in the embedded development area is at greatest risk, the most difficult. Software real-time technology has also been considerable development in software application development field at recent years, such as instant messaging, search, bar code, radio frequency technologies, etc. So how to design efficient and high-quality real-time software has become a major issue in the software development field.
     The paper study how to combined real-time software with the Eclipse platform through the developed project RealView Event Viewer of Wuhan University of Embest Embedded Systems R& D. It is as the part of the ARM embedded integrated development environment RVDS, provide the nuclear track data acquisition, analysis and display capabilities for the users which use the ARM Core, and also provide third-party extended functionality.
     The first, the related technologies involved in the issue were introduced, including real-time concepts, the design principles, features and methods of real-time software, eclipse platform architecture and the plug-in development techniques.
     Second, the paper division the software division of a design and modules based on the study in real-time software combinated with the overall demand for Event Viewer software. It described the function and design of each module in detail.
     Then, the paper focuses on the design and implementation of the Overview function. Overview concentrated shows the running of all the data displayed interface in the forms of picture. It combines JNI technology of the JAVA which is used on multiple places of the project to study how to implement the function of snapshot the computer application window under the Windows operating system.
     Allow third-party expansion is a major feature of this software. Third-party product provider in accordance with the extension points defined interfaces to extend, develop their own data stream processing tools to the form of plug-ins seamlessly integrated into Eclipse or RVDS. This paper describes the extension point definition and design, and the overall framework of the plug-in to guide the third-party product provider how to develop their own tools.
     Finally, the process of testing techniques and methods used are summarized during the development of the subject project. The problems found during the testing are analyzed.
引文
[1]胡靖宇,胡正国.实时软件开发技术的研究与实现:[硕士学位论文].西北工业大学,2003.9
    [2]Steve Holzner. Eclipse IDE Pocket Guide. O'Reilly Media,2005.8
    [3]杨中科.自己动手写开发工具:基于Eclipse的工具开发.北京:清华大学出版社,2007.10
    [4]ARM.RVDS--ARM系统开发的首选工具.IQ, Spring 2007:31-35
    [5]Michael Moore, Andre Pruitt. Principles of Real-Time Software Engineering. Wall & Emerson, Inc,1998.1
    [6]http://it. sohu. com/69/68/article212016869. shtml
    [7]陈刚.Eclispe从入门到精通.北京:清华大学出版社,2007.7
    [8]李大卓,刘海.Eclipse核心编程——插件、界面与Web开发.北京:人民邮电出版社,2007.4
    [9]张大治,应群.精通Eclipse.北京:清华大学出版社,2006.2
    [10]周竞涛.Eclipse完全手册:基础.进阶.高级.北京:电子工业出版社,2006.8
    [11]王占全,苏玲.Eclipse全程指南,,北京:电子工业出版社,2008.3
    [12]明日科技.Eclipse应用开发完全手册.北京:人民邮电出版社,2007.9
    [13]丁凡,安茹,束尧.Eclipse权威开发指南.北京:清华大学出版社,2006.12
    [14]强锋科技.Eclipse SWT/JFace核心应用.北京:清华大学出版社,2007.3
    [15]Jennifer Vesperman. Essential CVS. O'Reilly Media,2006.1
    [16]David Carlson. Eclipse Distilled. Addison-Wesley Professional 2005.2
    [17]http://www. ibm. com/developerworks/cn/opensource/os-ecl-dynext
    [18]张鹏,姜昊,许力等.Eclipse插件开发学习笔记,北京:电子工业出版社,2008.7
    [19]孟庆昌,王津涛。Eclipse Plugin/RCP开发方法详解.北京:机械工业出版社,2008.9
    [20]Eric Clayberg, Dan Rubel. Eclipse:Building Commercial-Quality Plug-ins,3rd Edition. Addison Wesley Professional,2008.12
    [21]Eric Gamma, Kent Beck. Contributing to Eclipse:Principles, Patterns, and Plug-Ins. Addison-Wesley Professional,2004
    [22]甘树满,王秀明.Eclipse插件开发方法与实战.北京:电子工业出版社,2006.10
    [23]RealView ICE and RealView Trace User Guide, ARM,2007
    [24]CoreSight Components Technical Reference Manual, ARM,2004.
    [25]Eric Freeman, Elisabeth Freeman, Kathy Sierra, etc. Head First Design Patterns. O'Reilly Media,2004.10
    [26]程杰.大话设计模式.北京:清华大学出版社,2007.12
    [27]莫勇腾.深入浅出设计模式(C#/Java版).北京:清华大学出版社,2006.9
    [28]Kevin Howard Goldberg. XML:Visual QuickStart Guide,2nd Edition. Peachpit Press. 2008.12
    [29]Elliotte Rusty Harold, W. Scott Means. XML in a Nutshell,3th Edition. O'Reilly Media,2004.9
    [30]Elliotte Rusty Harold. Processing XML with Java:A Guide to SAX, DOM, JDOM, JAXP, and TrAX. Addison-Wesley Professional,2002.11
    [31]Bruce Eckel. Thinking in Java,4th Edition. Prentice Hall,2006.2
    [32]Brian Goetz, Tim Peierls, Joshua Bloch, etc. Java Concurrency in Practice. Addison-Wesley Professional,2006.3
    [33]李兴华.Java开发实战经典(名师讲坛).北京:清华大学出版社,2009.08
    [34]印旻,王行言.Java语言与面向对象程序设计(第2版).北京:清华大学出版社,2007.11
    [35]Kathy Sierra,Bert Bates. Head First Java,2nd edition. O'Reilly Media,2009.3
    [36]J. B. Rainsberger. JUnit Recipes:Practical Methods for Programmer Testing. Manning Publications,2004.7
    [37]古乐,史九林.软件测试案例与实践教程.北京:清华大学出版社,2007.2
    [38]朱少民.全程软件测试.北京:电子工业出版社.2007.9
    [39]Lisa Crispin, Janet Gregory. Agile Testing:A Practical Guide for Testers and Agile Teams. Addison-Wesley Professional,2009.1
    [40]Ron Patton. Software Testing,2nd Edition.Sams,2005.8

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700