检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:毛澄映[1,2,3] 卢炎生[1] 张金隆[3] 卢超[1]
机构地区:[1]华中科技大学计算机科学与技术学院,湖北武汉430074 [2]江西财经大学软件学院,江西南昌330013 [3]华中科技大学管理学院,湖北武汉430074
出 处:《小型微型计算机系统》2008年第12期2258-2261,共4页Journal of Chinese Computer Systems
基 金:国家自然科学基金项目(70571025)资助;教育部高等学校博士点基金项目(20060487005)资助;湖北省自然科学基金项目(2005ABA266)资助;江西省教育厅科学技术研究项目(赣高教技字[2007]-267)资助;中国博士后科学基金项目(20070410946)资助;江西财经大学校级青年课题资助
摘 要:死锁是并发程序中最为常见的一类错误,直到现在并没有得到很好地解决.本文以Java并发程序为例,重点研究针对资源死锁较为有效的动态检测算法:根据并发程序的动态执行追踪信息,分析出加锁控制依赖关系,再根据死锁所应满足的条件在该依赖关系集上作适量演算便得到潜在死锁关系对.进一步地,结合线程间控制流图所反映的部分静态依赖关系,剔除假性死锁关系对,提高了计算结果的精度.该算法显著的特点是简单易于实现,且无需构造锁树或锁图等图形表示.Deadlock is one type of errors in most multi-threaded programs, and it hasn't been well settled until today. In this paper, a dynamic detection algorithm for finding resource deadlocks in concurrent Java programs has been proposed. Based on the execution trace information of a concurrent program, it produces locking control dependency relations firstly. Subsequently, the potential deadlocks can be worked out through imposing some relation calculations on the achieved locking control dependency relations. Furthermore, some static information of inter-thread control flow graph (ITCFG) is introduced to increase the precision of results. The presented algorithm is so simple that it can be easily implemented; on the other hand, it doesn't need to construct graphical representation such as lock tree and lock graph in the existing methods.
关 键 词:死锁 执行追踪信息 加锁控制依赖 线程间控制流图 动态检测
分 类 号:TP311.5[自动化与计算机技术—计算机软件与理论]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.222