Preemption Abstraction

  • Authors:
  • Erik Schierboom;Alejandro Tamalet;Hendrik Tews;Marko Eekelen;Sjaak Smetsers

  • Affiliations:
  • BliXem Internet Services,;Digital Security Group, Radboud Universiteit Nijmegen,;Digital Security Group, Radboud Universiteit Nijmegen,;Digital Security Group, Radboud Universiteit Nijmegen, and Faculty of Computer Science, Open University,;BliXem Internet Services,

  • Venue:
  • FMICS '09 Proceedings of the 14th International Workshop on Formal Methods for Industrial Critical Systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper presents the preemption abstraction , an abstraction technique for lightweight verification of one sequential component of a concurrent system. Thereby, different components of the system are permitted to interfere with each other. The preemption abstraction yields a sequential abstract system that can easily be described in the higher-order logic of a theorem prover. One can therefore avoid the cumbersome and costly reasoning about all possible interleavings of state changes of each system component. The preemption abstraction is best suited for components that use preemption points, that is, where the concurrently running environment can only interfere at a limited number of points. The preemption abstraction has been used to model the IPC subsystem of the Fiasco microkernel. We proved two practically relevant properties of the model. On the attempt to prove a third property, namely that the assertions in the code are always valid, we discovered a bug that could potentially crash the whole system.