一种并行JAVA程序运行时的死锁检测方法

一种并行JAVA程序运行时的死锁检测方法
一种并行JAVA程序运行时的死锁检测方法

一种并行JA V A程序运行时的死锁检测方法

关于并行JA V A程序的可靠性,死锁是最为严重和复杂的问题。在这篇论文中。我们讨论了在并行JA V A程序运行时如何动态地检测死锁,并提出了在一个JA V A程序的执行过程中,处于等待状态的一个同步象征,被称为JA V A线形等待图表。我们描述了各种类型的死锁,并提出了一种计算程序来检测死锁和执行方法。

标签:死锁检测器程序

1简介

死锁的问题是一个严重和复杂的并发系统。建立一些方法来自动检测并发系统中的死锁已成为一个重要的课题。至于自动死锁的并发程序的检测方法和工具,可分为两个类别:静态检测方法和动态检测方法。

至于静态检测方法,我们试图寻找一个潜在的死锁形式与目标程序来使实际运行。由于他们的目的是找出所有可能的死锁,那些不能出现在实际环境,多线程的执行时间和输入数据可以包含在结果。大部分这类工具基于形式化分析和模型检查。

至于动态检测的方法,我们试图通过运行实际,与一些探测器通过某种方法使其目标在实际执行中查找死锁的发生。我们打算在实际的环境中发生死锁检测时间的多线程的执行,并输入数据。

一种理想的动态检测方法应满足以下三个基本要求:①完整性:方法必须是能够检测出任何死锁。②健全性:该方法必须报告任何存在的死锁。③效率性:该方法必须能够得到执行,以便它可以检测到死锁的位置。

至于效率,我们是既要执行它,要尽可能减少成本。死锁检测组件应列入目标系统本身,为了准确地检测到死锁,我们的想法是基于自我实现的高度可靠的测量原理并发系统。

有对java的动态死锁检测多种产品。我们坚持他们没有足够的完整性。尤其是,大部分不是正确识别的通知等关系。通过这一原因,其中大部分无法检测的文件不能将Java死锁的文件检测清单表达出来。

Java平台特有的问题是依赖性:现有的手段是平台依赖新生凹痕,因为它们取决于特定的虚拟机。既然是独立于平台的Java最显著特点,有工作的工具之Java 程序也希望将平台独立,它是重要的自我检测的测量原理。

动态检测方法是目前最好的,从死锁检测领域的角度看,这是非常类似Java的并发设施,我们应对与Java特有问题时的Java程序中的死锁检测问题应用此方法。我们将在本文中介绍方法、推行工具死锁报告的一个示例。

相关主题
相关文档
最新文档