期刊文献+

基于常微分方程的死锁检测实验分析

Experiments on Detecting Program Deadlock with Ordinary Differential Equation Model
下载PDF
导出
摘要 用静态分析方法对并发程序进行死锁检测通常比较困难,其原因是会遇到状态空间爆炸问题.文中针对作者曾提出的一种可有效避免状态爆炸问题的死锁检测方法,进行进一步实验验证.该方法的基本框架是首先将表示并发系统的离散Petri网模型连续化,得到一种新的连续Petri网模型;在此基础上,建立系统的常微分方程模型;通过分析常微分方程组的解来检测系统中是否存在死锁.与传统方法不同点在于:该方法不需要遍历状态空间,而是分析一组常微分方程组的解.为了减少在求解常微分方程模型过程中的计算机系统的开销,作者还釆取了一系列优化策略.哲学家进餐问题被用来说明死锁检测的方法.大量的实验结果说明作者所提出的方法有着较强的静态分析能力.作为副产品,这种分析方法还可以用来判定系统的有界性. Detection of deadlock of concurrent programs by static analysis is in general difficult because of state-space explosion. This paper gives the feasibility test of a deadlock detection method avoiding explosion of state space entirely, which method was proposed by author, by conducting more experiments. The frame of this method is as following: Firstly a Petri net, which represents a concurrent system, is continued to a new continuous Petri net. Then based on this continuous Petri net model, a concurrent system can be modeled by a family of ordinary differential equations. Finally the system deadlocks can be checked by analyzing the solution of this family of ordinary differential equations. Thus instead of exploring reachable states as in traditional methods, the solution of a family of ordinary differential equations is analyzed. Some strategies are developed in order to optimize the method. Dining philosopher problem has been employed to illustrate the method. More experiments have been conducted, and the experimental data shows that the method has strong ability in static analysis. As a byproduct, the method can also been used to check the boundedness of a system.
出处 《计算机学报》 EI CSCD 北大核心 2009年第9期1736-1749,共14页 Chinese Journal of Computers
基金 国家自然科学基金(90818013 90718014)资助~~
关键词 死锁检测 并发程序 状态爆炸 连续PETRI网 常微分方程 deadlock detection concurrent program state explosion continuous Petri net ordinary differential equation
  • 相关文献

参考文献19

  • 1Tu S, Shatz S M, Murata T. Applying Petri net reduction to support Ada tasking deadlock analysis//Proceedings of the 11th International Conference on Distributed Computing Systems. Paris, France, 1990:96 -103.
  • 2David R, Alia H. Continuous Petri nets//Proceedings of the 8th European Workshop on Application and Theory of Petri nets. Zaragoza, Spain, 1987:275- 294.
  • 3Ding Z. Static analysis of concurrent programs using ordinary differential equations//Lecture Notes in Computer Science 5684, Springer, 2009:1-35.
  • 4Shatz S M, Mai K, Black C, Tu S. Design and implementation of a Petri net-based toolkit for Ada tasking analysis. IEEE Transactions on Parallel and Distributed Systems 1990, 1(4): 424-441.
  • 5Dijkstra E W. Hierarchical ordering of sequential processes. Acta Informatica, 1971, 1(2): 115-138.
  • 6Duri S, Buy U, Devarapalli R, Shatz S M. Application and experimental evaluation of state space reduction methods for deadlock analysis in Ada. ACM Transactions on Software Engineering and Methodology, 1994, 3(4) :340-380.
  • 7Ding Z, Zhang K. Performance analysis of concurrent programs using ordinary differential equations//Proceedings of the 32nd Annual IEEE International Computer Software and Application Conference(COMPSAC). IEEE Computer Society, Washington, DC, USA, 2008:841- 846.
  • 8Febbraro A D, Sacco N. Hybrid Petri nets for the performance analysis of transportation systems//Proceedings of the 37th Conference. Tampa, USA, 2002, 3:3232-3237.
  • 9Julvez J, Boel R. Modeling and controlling traffic behaviors with continuous Petri nets//Proceedings of the 16th IFAC World Congress. Prague, Czech Republic, 2005.
  • 10韩耀军,蒋昌俊.并发操作系统中基于有色Petri网的死锁检测与避免[J].计算机科学,2002,29(12):190-192. 被引量:1

二级参考文献61

共引文献192

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部