Get 20M+ Full-Text Papers For Less Than $1.50/day. Start a 7-Day Trial for You or Your Team.

Learn More →

A verified messaging system

A verified messaging system We present a concurrent-read exclusive-write buffer system with strong correctness and security properties. Our motivating application for this system is the distribution of sensor values in a multicomponent vehicle-control system, where some components are unverified and possibly malicious, and other components are vehicle-control-critical and must be verified. Valid participants are guaranteed correct communication (i.e., the writer is always able to write to an unused buffer, and readers always read the most recently published value), while invalid readers or writers cannot compromise the correctness or liveness of valid participants. There is only one writer, all operations are wait-free, and there is no extra process or thread mediating communication. We prove the correctness of the system with valid participants by formally verifying a C implementation of the system in Coq, using the Verified Software Toolchain extended with an atomic exchange operation. The result is the first C-level mechanized verification of a nonblocking communication protocol. http://www.deepdyve.com/assets/images/DeepDyve-Logo-lg.png ACM SIGBED Review Association for Computing Machinery

A verified messaging system

ACM SIGBED Review , Volume 1 (OOPSLA): 28 – Oct 12, 2017

Loading next page...
 
/lp/association-for-computing-machinery/a-verified-messaging-system-gPSLQL0PWf

References (24)

Publisher
Association for Computing Machinery
Copyright
Copyright © 2017 ACM
eISSN
1551-3688
DOI
10.1145/3133911
Publisher site
See Article on Publisher Site

Abstract

We present a concurrent-read exclusive-write buffer system with strong correctness and security properties. Our motivating application for this system is the distribution of sensor values in a multicomponent vehicle-control system, where some components are unverified and possibly malicious, and other components are vehicle-control-critical and must be verified. Valid participants are guaranteed correct communication (i.e., the writer is always able to write to an unused buffer, and readers always read the most recently published value), while invalid readers or writers cannot compromise the correctness or liveness of valid participants. There is only one writer, all operations are wait-free, and there is no extra process or thread mediating communication. We prove the correctness of the system with valid participants by formally verifying a C implementation of the system in Coq, using the Verified Software Toolchain extended with an atomic exchange operation. The result is the first C-level mechanized verification of a nonblocking communication protocol.

Journal

ACM SIGBED ReviewAssociation for Computing Machinery

Published: Oct 12, 2017

Keywords: concurrent separation logic

There are no references for this article.