面向Java锁机制的字节码自动重构框架  被引量:4

Automated Refactoring Framework for Java Locks

在线阅读下载全文

作  者:张杨[1] 张冬雯[1] 仇晶[1] 

机构地区:[1]河北科技大学信息科学与工程学院,石家庄050000

出  处:《计算机科学》2015年第11期84-89,共6页Computer Science

基  金:国家自然科学基金项目(61440012);河北省高等学校青年拔尖人才计划项目(BJ2014023);河北省自然科学基金项目(F2012208016)资助

摘  要:Java语言提供了同步锁、可重入锁和读写锁等几种锁机制,在并行程序设计中不同的数据结构使用这几种锁机制时获得的性能通常是不同的。为了在不同的锁机制之间进行自动转换,进而帮助程序员了解程序的性能,提出了一种面向Java锁机制的字节码自动重构框架,并基于该框架实现了字节码重构工具Lock2Lock。Lock2Lock在Quad中间表示的基础上对字节码进行静态分析,并对分析的结果进行一致性验证,通过Javassist完成字节码的重构。使用红黑树、消费者生产者程序以及SPECjbb2005 3个测试程序对Lock2Lock重构工具进行了测试,结果表明,Lock2Lock可以成功地实现从同步锁到可重入锁或读写锁的重构。Java locks, such as synchronized, ReentrantLock, and ReadWriteLock, often obtain different performances when applied on different data structures. To learn about which lock will obtain the best pertormance,mere is a strong need to transform from one lock to another automatically. This paper presented an automated refactoring framework for the transformation of Java locks. The framework extensively relies on static program analysis to perform the refacto- ring. The evaluation was performed using three benchmarks, such as red-black tree, producer-consumer problem and SPECjbb2005. The successful refaetoring results are observed and the time of the refaetoring is acceptable.

关 键 词:Java锁 软件重构 程序分析 字节码转换 

分 类 号:TP311[自动化与计算机技术—计算机软件与理论]

 

参考文献:

正在载入数据...

 

二级参考文献:

正在载入数据...

 

耦合文献:

正在载入数据...

 

引证文献:

正在载入数据...

 

二级引证文献:

正在载入数据...

 

同被引文献:

正在载入数据...

 

相关期刊文献:

正在载入数据...

相关的主题
相关的作者对象
相关的机构对象