论文部分内容阅读
目前在实时控制系统软件开发中,应用面向对象的技术,把重点都放在了系统的软件结构和功能分解上,而忽略了实时控制系统环境下非功能性要求的实现。即把整个系统按照功能分解为小的单元,然后再开发这些小单元。这些小的单元因为类的封装性隐藏内部实现,对外提供接口,最后整合这些单元为整个系统,实现系统的功能;但是实时控制系统中的一些影响整个系统性能的非功能性需求如时间要求、可靠性、任务调度等,被全加入到系统功能单元中,则表示功能单元的类的代码就会非常混乱,这样不但降低了模块的可追踪性和可重用性、也大大降低系统的稳定性,为系统的稳定运行带来潜在威胁。
文章首先介绍了AOP技术的概念、原理和目前流行的实现技术。接着对实时控制系统进行了分析,讨论了传统的面向对象实时系统框架在处理横切问题上的局限性。在重点研究了AOP技术和编译技术的基础之上,创新地提出面向方面的实时控制系统框架ARTOS(Aopreal-timeoperatesystem)和用于实现编织技术的编织器ARTOSWEAVER,并且详细论述了两者的设计与实现。ARTOS与传统的纯面向对象的实时控制框架相比,在框架中引入AOP技术来解决系统的横切问题。ARTOSWEAVER是ARTOS的关键技术解决方案,ARTOSWEAVER采用静态编织、代码转换的方式实现代码编织。支持目前流行的大部分AOP语法。基于ARTOS的实时控制系统不但能够在设计上可以进行功能模块和非功能模块的分离,而且在代码实现上,功能模块的实现代码中不会出现非功能模块的代码,两者之间通过ARTOSWEAVER编织在一起。这样就解决了系统中的代码纠缠问题,大大提高了系统的稳定性。最后为了验证ARTOS及ARTOSWEAVER的作用,本文将ARTOS应用于货币搬送实时控制系统中的设计开发中,在应用中充分的体现了ARTOS的优点。