Typing copyless message passing

  • Authors:
  • Viviana Bono;Chiara Messa;Luca Padovani

  • Affiliations:
  • Dipartimento di Informatica, Università di Torino, Italy;Dipartimento di Informatica, Università di Torino, Italy;Dipartimento di Informatica, Università di Torino, Italy

  • Venue:
  • ESOP'11/ETAPS'11 Proceedings of the 20th European conference on Programming languages and systems: part of the joint European conferences on theory and practice of software
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a calculus that models a form of process interaction based on copyless message passing, in the style of Singularity OS. The calculus is equipped with a type system ensuring that well-typed processes are free from faults, leaks, and communication errors. The type system is essentially linear, but we show that linearity alone is inadequate. On the one hand, it is too strict when dealing with heap-allocated objects; on the other hand, it leaves room for scenarios where well-typed processes leak significant amounts of memory. We address these problems using dedicated types for keeping track of dereferenced pointers and by basing the type system upon an original variant of session types.