分布式进程的构造和分析
设计可靠协议和系统的软件工具

CADP新闻稿——11号
2019年1月17日

此新闻稿可从CADP主页.


目录

1.2018年CADP进展

本页总结了CADP工具箱从用户和软件开发人员社区的观点。其他成果,包括科学进展、出版物、针对工业问题的CADP,以及基于CADP可在CONFACS团队的年度活动报告中找到。

2018年,CADP的发展稳步推进。遵循2013年建立的月度滚动发布模型,12个版本的CADP已于2018年发布。从版本2018-a到版本2019-a,已经修复了28个错误,并带来了68项改进。

右边的图表给出了CADP的各个组成部分。努力不是以时间来衡量的,而是以基于合理假设,历史文件的行数变化涉及的越多,描述它所需的行就越多。

2.主要增强功能概述

本节总结了CADP。有关更多详细信息,请参阅CADP更改列表并发送至CADP分发中提供的历史文件。
卡介苗

2018年,工作重点是BCG_STEADY和概率/随机系统的BCG_TRANSIENT工具。这个BCG_STEADY和BCG_TRANSIENT的命令行选项如果输入BCG图不包含任何随机转换。修复了一个错误,和诊断消息不再混合状态数和矩阵索引。这些工具已扩展为接受单一状态马尔可夫链和禁止概率自循环对于更长的概率跃迁电路,因为两者都代表了类似的“时间锁定”情况。

有关详细信息,请参阅历史记录条目:#2383 #2389 #2391 #2393 #2395 #2396.

演示

添加了两个新的演示示例:demo_06(传输层LNT中规定的安全v1.3握手协议),以及demo_11(实现动态任务调度器的硬件块)。demo_12(消息验证器算法)现在有文档记录在出版物中[Garavel-Marsso-18].demo_17(分布式领导人选举协议)已从LOTOS至LNT。最后,大多数现有的演示示例都已更新以反映MCLv3和SVL语言的演变。

有关详细信息,请参阅历史记录条目:#2411 #2422 #2425 #2434 #2435 #2438 #2439 #2441 #2448 .

文件

添加了两个手册页(“bes”和“seq”),其中提供CADP BES格式的独立定义用于执行的布尔方程系统和SEQ格式踪迹。新出版物[加拉维·朗·穆尼尔-18]已添加,它提供了关于成分验证。shell变量的描述SVL手册页中的已增强。OPEN/CAESAR手册页面得到了增强,可以提供完整的功能原型参数并反映与类型相关的先前更改CAESAR_TYPE_FORMAT(CAESAR_类型_格式)。

有关详细信息,请参阅历史记录条目:#2386 #2449 #2451 #2459 #2475 #2476.

LNT公司

2018年,我们为TRAIAN 3.0本地版付出了巨大努力LNT编译器,与CADP并行开发,以及对使用的SYNTAX编译器生成系统的增强许多CADP工具。CADP的LNT工具受益于此:例如,在LNT2LOTOS发出的警告和错误消息中,行号变得更精确了。除了错误修复之外,LNT_DEPEND工具还可以计算LNT模块之间的依赖关系已被完全重写速度大大加快。此外,LNT语言已简化为删除构造函数的“!external”杂注,作为“!exterinal”伪注for类型就足够了。

有关详细信息,请参阅历史记录条目:#2390 #2450 #2462 #2478.

LOTOS公司

除了三个错误修复,CAESAR和CAESAR。ADT编译器对于LOTOS,现在可以使用一个新选项“-depend”,它显示列表LOTOS规范中传递包含的库文件的数量。

有关详细信息,请参阅历史记录条目:#2406号2428号2430号2431。

MCL公司

MCL v3语言在MCL v4语言通过消除语法差异存在于两种语言之间,关于无限重复运算符(“@”)及其各自的先例中的串联(“.”)和选择(“|”)运算符的正则表达式。MCL v3也被丰富了正则公式上的选项运算符(“?”)已经存在存在于MCL v4中。

在这些更改之后MCL v3和MCL v4统一在一个工具中现在由EVALUATOR 3和EVALUAATOR 4调用。这个相应的手册页已相应简化,引入了两个总体手册页(“mcl”和“评估者”)。这些工具中添加了两个新选项:“-depend”,它显示传递包含的库在MCL文件中,以及SVL用于为MCL显示正确的文件名和行号SVL脚本中嵌入的公式。

除了五个错误修复之外,MCL_EXPAND的内存占用已减少。现在是MCL_EXPAND、EVALUATOR 3和EVALUATATOR 4显示错误消息,其中行号是源“.mcl”文件,而不是中间“.xm”文件由XTL_EXPAND生成。此外,还会生成更好的错误消息对于交替深度大于1的MCL公式,以及对于MCL v3输入文件包含用MCL v4编写的正确公式。

有关详细信息,请参阅历史记录条目:#2388 #2392 #2394 #2398 #2407 #2408 #2409 #2412 #2413 #2414 #2415 #2416#2417 #2420 #2423 #2424 #2427 #2432.

其他

除了修复SVL中的一个错误外SVL变得更加通用。新的shell宏SVL_COMMAND_FOR_CLEAN()已添加到SVL库中。SVL现在调用EVALUATOR 3,EVALUATOR 4和XTL及其新的“-source”选项以获取错误以及警告消息,其中文件名和行号是包含时态逻辑公式的SVL脚本。

除了两个错误修复外,INSTALLATOR现在显示得更好关于稳定/测试版和CADP安装程序的消息网页得到了改进。EUCALYPTUS图形用户界面也以各种方式得到了增强。

有关详细信息,请参阅历史记录条目:#2384 #2385 #2401 #2410 #2418 #2437 #2443 #2445 #2447 #2472 #2479.

NUPN公司

CAESAR公司。NUPN的BDD工具(嵌套单位Petri网)已经是扩展了12个新选项,及其“冗余单元”的含义选项已更改。名为NUPN_INFO的新工具已添加到CADP工具箱,用于执行NUPN的三个规范化转换。已经修复了两个错误,以及各种更正和增强已被带到CAESAR。BDD手册页。

有关详细信息,请参阅历史记录条目:#2404 #2452 #2453 #2457 #2458 #2460 #2463 #2466 #2473.

打开/CAESAR

CADP工具箱现在包含一个名为SCRUTATOR的新工具,用于修剪动态标记过渡系统。新的SOLVE_2库丰富了OPEN/CAESAR环境用于动态求解线性方程组。除了EXP2C中的错误修复外,还出现了一个新选项“依赖”添加到EXP2C和EXP.OPEN中以传递方式显示所有文件包含在EXP文件中。TGV中修复了一个错误,并添加了一个新选项“-self”取消有关自动插入的*-转换的警告输出不完整的测试目的。DISTRIBUTOR现在触发所有计算的分布式终止一旦一个节点上的状态表溢出,则返回节点;此外DISTRIBUTOR生成的“.log”文件现在使用相同的命名约定作为“.bcg”片段也由DISTRIBUTOR生成。

有关详细信息,请参阅历史记录条目:#2397 #2399 #2426 #2429 #2433 #2436 #2467 #2477.

港口

CADP工具箱已移植到Solaris 11和SunOS 5.11打开印第安纳州的“嬉皮士”。GC垃圾收集器库(调用通过CAESAR的“-gc”选项)升级到版本7.6.4避免在Solaris和最新版本的GNU indent上发现问题现在支持。

CADP也已移植到macOS 10.14“Mojave”和64位CADP版本现在可用于macOS。中的错误macOS的安装指令已更正。

在Windows上,修复了两个错误;“cadpcygwin.com”执行其他检查和OCIS已简化。

从全球来看,大多数CADP编译器的错误和警告消息统一。临时文件和目录的创建更加安全通过引入名为CADP_TEMPORARY的新脚本。最后TST脚本得到了增强,可以检测CADP出现的两种新情况未正确安装。

有关详细信息,请参阅历史记录条目:#2387 #2400 #2402 #2403 #2405 #2419 #2421 #2440 #2454 #2455 #2456 #2461 #2465 #2464 #2469 #2471 #2474.

XTL公司

除了四个错误修复之外,XTL模型检查器扩展了两个新选项:“-depend”,它列出了文件传递性地包含在XTL规范中,以及“-source”,SVL使用它来显示正确的文件名和行SVL场景中嵌入的XTL公式的编号。此外,XTL编译器现在对杂注“!implementedby”指定的C标识符,“!comparedby”、“!enumeratedby”和“!printedby”。

有关详细信息,请参阅历史记录条目:#2408 #2442 #2444 #2446 #2468 #2470.

3.确认

我们非常感谢以下科学家,他们为我们提供了关于CADP使用的宝贵反馈和建议:

以及我们可能忘记的所有其他人。


返回CADP主页