• Deutsch
Login

Open Access

  • Home
  • Search
  • Browse
  • Publish/report a document
  • Help

Refine

Has Fulltext

  • no (16)
  • yes (5)

Author

  • Ernst, Gidon (21)
  • Schellhorn, Gerhard (19)
  • Reif, Wolfgang (18)
  • Pfähler, Jörg (14)
  • Haneberg, Dominik (7)
  • Tofan, Bogdan (4)
  • Bodenmüller, Stefan (2)
  • Bao, Yuyan (1)
  • Bormer, Thorsten (1)
  • Brockschmidt, Marc (1)
+ more

Year of publication

  • 2018 (2)
  • 2017 (1)
  • 2016 (3)
  • 2015 (2)
  • 2014 (5)
  • 2013 (2)
  • 2012 (2)
  • 2011 (3)

Document Type

  • Article (17)
  • Part of a Book (2)
  • Doctoral Thesis (1)
  • Report (1)

Language

  • English (21)

Keywords

  • Software (2)
  • flash file system (2)
  • refinement (2)
  • Dateisystem (1)
  • Flash-Speicher (1)
  • Formale Spezifikationstechnik (1)
  • KIV (1)
  • Modelling and Simulation (1)
  • Schrittweise Verfeinerung (1)
  • Stromausfall (1)
+ more

Institute

  • Fakultät für Angewandte Informatik (21)
  • Institut für Informatik (20)
  • Institut für Software & Systems Engineering (20)
  • Lehrstuhl für Softwaretechnik (19)
  • Nachhaltigkeitsziele (2)
  • Ziel 3 - Gesundheit und Wohlergehen (2)

21 search hits

  • 1 to 20
  • 10
  • 20
  • 50
  • 100

Sort by

  • Year
  • Year
  • Title
  • Title
  • Author
  • Author
Crash-safe refinement for a verified flash file system (2014)
Pfähler, Jörg ; Ernst, Gidon ; Schellhorn, Gerhard ; Haneberg, Dominik ; Reif, Wolfgang
This paper presents formal proof obligations for data refinement in the presence of unexpected crashes, notably due to a power failure. The work is part of our effort to construct a verified file system for flash memory. We apply the theory to one of the components in the flash file system, namely the erase block management layer. We show its functional correctness with respect to a high-level specification. We prove that the system can always recover from power loss to a desired state. We observe two simplifications that greatly reduce the proof effort for crashes in practice. Proofs are mechanized in the theorem prover KIV.
A Verified POSIX-Compliant Flash File System - Modular Verification Technology & Crash Tolerance (2017)
Ernst, Gidon
In the Flashix project, a file system for flash memory has been developed. It is proven functionally correct and tolerates system crashes such as abrupt power cuts at any point in time during its execution. The development approach is based in incremental and modular refinement. This dissertaion reports on the verification approach, the practical development, and the results. The first contribution is a refinement theory with strong guarantees for compositionality built in. It is based on the observations that can be made of a sequential interface of subcomponents that have an encapsulated state. In order to be able to study the effect of power cuts, which may hit the system in any intermediate state of its execution, the foundations are a fine grained, trace-based semantics that exposes such steps. The integration of subcomponents with their context is done via operation calls with explicit input and output parameters. At such calls, the steps of the program defining the operation are collapsed into an atomic view, which provides the lever for a substitution theorem for submachine refinement. The second contribution is an extension of the theory that permits to specify and verify the effect of system crashes and their subsequent recovery. This extension is fully compatible with the incremental and modular approach used for the functional verification. Furthermore, two different views of the atomicity of operations are considered, namely a white box semantics that is adequate for implementation level components, and a black box semantics that is adequate for specification level components. Several proof methods for compositional refinement in the presence of crashes are derived. A reduction theorem permits to gradually switch to the much simpler black box view. The third contribution consists of formal models of concepts for flash file system that capture the implementation challenges at a high degree of abstraction, while at the same time these models do not introduce unrealistic conceptual simplifications. Specifically, a formal model of the POSIX standard for file systems is presented. Exploiting the modular theory for refinement under crashes, a verified implementation is described that separates generic aspects from the flash specific details. The models in the refinement hierarchy comprise a coherent working system, from which code is generated that can run on real flash hardware.
Modular verification of order-preserving write-back caches (2017)
Pfähler, Jörg ; Ernst, Gidon ; Bodenmüller, Stefan ; Schellhorn, Gerhard ; Reif, Wolfgang
Modular, crash-safe refinement for ASMs with submachines (2016)
Ernst, Gidon ; Pfähler, Jörg ; Schellhorn, Gerhard ; Reif, Wolfgang
A relational encoding for a clash-free subset of ASMs (2016)
Schellhorn, Gerhard ; Ernst, Gidon ; Pfähler, Jörg ; Reif, Wolfgang
Inside a verified flash file system: transactions and garbage collection (2016)
Ernst, Gidon ; Pfähler, Jörg ; Schellhorn, Gerhard ; Reif, Wolfgang
Symbolic execution for a clash-free subset of ASMs (2018)
Schellhorn, Gerhard ; Ernst, Gidon ; Pfähler, Jörg ; Bodenmüller, Stefan ; Reif, Wolfgang
Unifying separation logic and region logic to allow interoperability (2018)
Bao, Yuyan ; Leavens, Gary T. ; Ernst, Gidon
Modular refinement for submachines of ASMs (2014)
Ernst, Gidon ; Pfähler, Jörg ; Schellhorn, Gerhard ; Reif, Wolfgang
A formal model of a virtual filesystem switch (2012)
Ernst, Gidon ; Schellhorn, Gerhard ; Haneberg, Dominik ; Pfähler, Jörg ; Reif, Wolfgang
Simulating a flash file system with CoreASM and Eclipse (2011)
Junker, Maximilian ; Haneberg, Dominik ; Schellhorn, Gerhard ; Reif, Wolfgang ; Ernst, Gidon
Verification of B+ trees: an experiment combining shape analysis and interactive theorem proving (2011)
Ernst, Gidon ; Schellhorn, Gerhard ; Reif, Wolfgang
Interleaved programs and rely-guarantee reasoning with ITL (2011)
Schellhorn, Gerhard ; Tofan, Bogdan ; Ernst, Gidon ; Reif, Wolfgang
Development of a verified flash file system (2014)
Schellhorn, Gerhard ; Ernst, Gidon ; Pfähler, Jörg ; Haneberg, Dominik ; Reif, Wolfgang
KIV: overview and VerifyThis competition (2015)
Ernst, Gidon ; Pfähler, Jörg ; Schellhorn, Gerhard ; Haneberg, Dominik ; Reif, Wolfgang
Verification of a virtual filesystem switch (2014)
Ernst, Gidon ; Schellhorn, Gerhard ; Haneberg, Dominik ; Pfähler, Jörg ; Reif, Wolfgang
RGITL: a temporal logic framework for compositional reasoning about interleaved programs (2014)
Schellhorn, Gerhard ; Tofan, Bogdan ; Ernst, Gidon ; Pfähler, Jörg ; Reif, Wolfgang
Formal specification of an erase block management layer for flash memory (2013)
Pfähler, Jörg ; Ernst, Gidon ; Schellhorn, Gerhard ; Haneberg, Dominik ; Reif, Wolfgang
Compositional verification of a lock-free stack with RGITL (2013)
Tofan, Bogdan ; Schellhorn, Gerhard ; Ernst, Gidon ; Pfähler, Jörg ; Reif, Wolfgang
The COST IC0701 verification competition 2011 (2012)
Bormer, Thorsten ; Brockschmidt, Marc ; Distefano, Dino ; Ernst, Gidon ; Filliâtre, Jean-Christophe ; Grigore, Radu ; Huisman, Marieke ; Klebanov, Vladimir ; Marché, Claude ; Monahan, Rosemary ; Mostowski, Wojciech ; Polikarpova, Nadia ; Scheben, Christoph ; Schellhorn, Gerhard ; Tofan, Bogdan ; Tschannen, Julian ; Ulbrich, Mattias
  • 1 to 20

OPUS4 Logo

  • Contact
  • Imprint
  • Sitelinks