2015
DOI: 10.1007/978-3-319-26529-2_10
|View full text |Cite
|
Sign up to set email alerts
|

Fault-Tolerant Resource Reasoning

Abstract: Abstract. Separation logic has been successful at verifying that programs do not crash due to illegal use of resources. The underlying assumption, however, is that machines do not fail. In practice, machines can fail unpredictably for various reasons, e.g. power loss, corrupting resources. Critical software, e.g. file systems, employ recovery methods to mitigate these effects. We introduce an extension of the Views framework to reason about such methods. We use concurrent separation logic as an instance of the… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
23
0

Year Published

2015
2015
2023
2023

Publication Types

Select...
3
2
2

Relationship

1
6

Authors

Journals

citations
Cited by 16 publications
(23 citation statements)
references
References 24 publications
0
23
0
Order By: Relevance
“…There are several existing systems that support reasoning about crashes and recovery, particularly in the context of file-system verification [7,8,11,26,28]. Most have no support for layered recovery, since they consider only a single recovery procedure at a time.…”
Section: Multiple Unreliable Disksmentioning
confidence: 99%
See 3 more Smart Citations
“…There are several existing systems that support reasoning about crashes and recovery, particularly in the context of file-system verification [7,8,11,26,28]. Most have no support for layered recovery, since they consider only a single recovery procedure at a time.…”
Section: Multiple Unreliable Disksmentioning
confidence: 99%
“…Ntzik et al [26] developed an extension to concurrent separation logic to support reasoning about crashes in concurrent systems. Similar to CHL's idempotence principle, this logic has a rule for verifying a recovery procedure which involves showing that the precondition for recovery is an invariant during recovery's execution.…”
Section: Related Workmentioning
confidence: 99%
See 2 more Smart Citations
“…These kinds of bugs can be particularly frustrating because, even when it has been formally proved for a program P that P ⊧ ϕ, the proof is foiled by these external events that crash and restart the program. Some recent efforts [7,8,19,26] notwithstanding, this space remains largely unexplored: little backbone has been developed for understanding what it means for a program to correctly recover from a crash from a verification perspective.…”
Section: Introductionmentioning
confidence: 99%