Reproducible execution of SR programs

R. Olsson
{"title":"Reproducible execution of SR programs","authors":"R. Olsson","doi":"10.1002/(SICI)1096-9128(19990810)11:9%3C479::AID-CPE441%3E3.0.CO;2-S","DOIUrl":null,"url":null,"abstract":"Reproducing the execution of a concurrent program is important in debugging and testing. It requires that, regardless of the actual order in which processes may execute, the reproduced execution is identical, with respect to the order in which certain activities occur, to a previously recorded execution. This paper presents a solution to the reproducibility problem for programs written in the SR concurrent programming language. Our solution transforms an arbitrary SR program into one for recording an event sequence and one for replaying from an event sequence. SR provides a rich collection of synchronization mechanisms, including rendezvous, asynchronous message passing, remote procedure call, and dynamic process creation. SR language features allow: exible invocation servicing (e.g., use of invo-cation parameters in selecting an invocation to service in message passing or rendezvous); dynamically created processes and resource (module) instances; dynamic communication paths between processes; and dynamic distribution of programs across multiple machines. Because of these features, adaptations of previous solutions to the reproducibility problem for other languages and notations do not work for SR. Our solution handles all the above features. It results in a naturally distributed control algorithm for programs that are distributed. This paper also describes the implementations of our transformation tools.","PeriodicalId":199059,"journal":{"name":"Concurr. Pract. Exp.","volume":"10 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1999-08-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"3","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Concurr. Pract. Exp.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1002/(SICI)1096-9128(19990810)11:9%3C479::AID-CPE441%3E3.0.CO;2-S","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 3

Abstract

Reproducing the execution of a concurrent program is important in debugging and testing. It requires that, regardless of the actual order in which processes may execute, the reproduced execution is identical, with respect to the order in which certain activities occur, to a previously recorded execution. This paper presents a solution to the reproducibility problem for programs written in the SR concurrent programming language. Our solution transforms an arbitrary SR program into one for recording an event sequence and one for replaying from an event sequence. SR provides a rich collection of synchronization mechanisms, including rendezvous, asynchronous message passing, remote procedure call, and dynamic process creation. SR language features allow: exible invocation servicing (e.g., use of invo-cation parameters in selecting an invocation to service in message passing or rendezvous); dynamically created processes and resource (module) instances; dynamic communication paths between processes; and dynamic distribution of programs across multiple machines. Because of these features, adaptations of previous solutions to the reproducibility problem for other languages and notations do not work for SR. Our solution handles all the above features. It results in a naturally distributed control algorithm for programs that are distributed. This paper also describes the implementations of our transformation tools.
可重复执行的SR程序
重现并发程序的执行在调试和测试中很重要。它要求,无论流程执行的实际顺序如何,复制的执行就某些活动发生的顺序而言与先前记录的执行是相同的。本文提出了用SR并发编程语言编写的程序的可重复性问题的解决方案。我们的解决方案将任意的SR程序转换为一个用于记录事件序列的程序和一个用于从事件序列中重播的程序。SR提供了丰富的同步机制集合,包括集合、异步消息传递、远程过程调用和动态流程创建。SR语言特性允许:灵活的调用服务(例如,在消息传递或集合中选择要服务的调用时使用调用参数);动态创建的流程和资源(模块)实例;进程之间的动态通信路径;以及程序在多台机器上的动态分布。由于这些特性,以前的解决方案对其他语言和符号的再现性问题的适应性不适用于sr。我们的解决方案处理上述所有特性。它为分布式程序带来了一种自然分布的控制算法。本文还描述了我们的转换工具的实现。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信