2009-12-22 85 views
7

是否有一个好的工具可以模拟应用程序并发/锁定方案的图形方式,并可以模拟一些方面?有没有一种工具来模拟/模拟软件并发?

我知道Petri网可以用于或多或少的,但我不知道一个好的GUI工具,可以设计和模拟。

UML是否可用于此目的?

任何良好的联系,非常感激。

回答

3

UML活动图可以表示为Petri网(例如see this paper)。不幸的是,我不知道任何用于Petri网或活动图模拟的工业导向工具(但有很多学术项目可以轻松找到)。

你确定要模拟你的模型吗(通过模拟我的意思是你真的想坐下来看看你的Perti网络是如何执行的)?通常这种类型的分析适用于小而简单的算法。在现实世界的情况下,你可能会想要做你算法的model checking而不是模拟。我建议你检查SPIN(许多公司都使用过,例如西门子)。我也有积极的经验AlloyPrism。但如果你的重点是验证并行算法,我建议你首先考虑SPIN。

编辑:我查了一些工具,用于模拟,我可以建议你看一看

1)http://sourceforge.net/projects/visual-petri/

2)http://www.renew.de/

3)http://www.winpesim.de/index.html

+0

非常感谢您的回答。我实际上只想为演示目的进行模拟,并且仅对某些情况的简化模型进行模拟:比方说,当数据设置为D1并且参数为P1时,3-4线程试图做同样的事情。 – 2009-12-26 09:25:00

+0

不客气。我已经添加了一些链接到我的答案。 – 2009-12-27 16:15:42

2

SPIN是一种流行的分布式系统验证工具,但是只有命令行我认为。但是在Spin网页上有一个指向密切相关的GUI工具的链接,这个工具叫做GOAL

1

这是一个很长的时间,因为我已经看过它,但听起来像Ptolemy将是一个不错的选择。

2

我怀疑这是你在找什么,但我会在我的两分钱抛出:

在我的大学,在我们的并发软件系统类中,我们使用一个名为Labelled Transition System Analyser (LTSA)工具。它实际上是一种可以用来模拟系统行为的语言。

“代码”变成状态图和转换表。

1

您可以检查Petri Net Sim,模拟常见/定时/彩色Petrinets,它带有一个很好的GUI,可以实时显示Petri Net的执行情况。

0

尝试使用并发工具LTSA。 Java程序。 (Labeled Transition System Analyzer)来模拟程序。你可以从这里下载:

http://www.doc.ic.ac.uk/ltsa/

但是你必须要有耐心,而使用它,它可以采取几个小时来学习如何使用它。在对Java程序进行建模时可能效果最好。

当然,使用UML模型总是很好:)

相关问题