Runtime Verification in Distributed Computing

Runtime Verification in Distributed Computing
复制标题

DOI:
--
复制
发表时间:
2011-06
期刊:
Journal of clinical oncology : official journal of the American Society of Clinical Oncology
影响因子:
--
通讯作者:
Somayeh Malakuti Khah Olun Abadi;J. Park;M. Obaidat;M. Aksit;Christoph Bockisch
Somayeh Malakuti Khah Olun Abadi;J. Park;M. Obaidat;M. Aksit;Christoph Bockisch
中科院分区:
其他
文献类型:
--
作者:
Somayeh Malakuti Khah Olun Abadi;J. Park;M. Obaidat;M. Aksit;Christoph Bockisch

文献摘要

被引文献

相似文献

运行时验证的目的是检查应用程序是否按照指定的方式执行其行为。因此,根据实际执行上下文检查应用程序的活动执行跟踪;当违反规范时,采取诊断和可能的恢复操作。在今天的实践中,软件越来越多地分布在多个进程上,可能在不同的位置运行。这是由中间件支持的,中间件在某种程度上允许以分布透明的方式实现应用程序。为了在分布式软件中实现有效的运行时验证,我们在本文中重点关注三个需求:(1)软件行为的分布透明规范,因为软件也是以这种方式实现的;(2)行为的端到端验证;(3)为任意过程和分布结构自动生成验证模块。我们提出了一种新的满足这些要求的运行时验证方法,并给出了它在EventChaser系统中的实现。此外,我们提出了一种方法,至少将规范的分布感知最小化到一个可接受的级别,使软件不使用受支持的中间件进行进程间通信。
Runtime verification aims to check whether an application executes its behaviour as specified. Thereby the active execution trace of an application is checked in terms of the actual execution context; diagnosis and, possibly, recovery actions are taken when the specification is violated. In today’s practices, software is increasingly distributed over multiple processes, potentially running at different locations. This is supported by middleware that, to some extent, allows implementing applications in a distribution-transparent way. To enable effective runtime verification in distributed software we focus in this paper on three requirements: (1) distribution-transparent specification of software behaviour, as software is also implemented in such a way, (2) end-to-end verification of behaviour, and (3) automatic generation of verification modules for arbitrary process and distribution structures. We present a novel runtime verification approach satisfying these requirements and present its implementation in the EventChaser system. Furthermore we present an approach that at least minimizes the distribution-awareness of specifications to an acceptable level for software not using supported middleware for inter-process communication.