同步机制是并行程序中用于保证程序状态和数据操作正确性的必备措施,然而同步机制的多样性使得并行程序在使用不同同步机制时所受的约束和获得的性能往往不同,选择哪种同步机制能够最大程度发挥并行程序的性能是并行程序设计领域亟待解决的一个关键问题。本课题将以并行程序中同步机制作为主要研究对象,采用程序分析和场景分析方法以及面向方面编程技术,对不同同步机制之间自动重构方法以及重构前后程序的一致性问题进行深入研究。通过本课题的研究,可以帮助程序员完成不同同步机制之间的自动转换,进而帮助程序员选择使用性能较好的同步机制,这不仅有利于优化并行程序的性能,而且有利于提高并行程序设计效率(如节省程序员手动转换的时间和减小工作量),同时为提高并行程序的设计水平奠定理论基础和提供技术保障。
英文主题词Software refactoring;Synchronization mechanism;Software analysis;Parallel programming;Consistency