kirancodes.me
To Proof Maintenance & Beyond!

SharC: checking data sharing strategies for multithreaded C

Zachary R. Anderson, David Gay, Robert Ennals, Eric A. Brewer

Abstract

Unintended or unmediated data sharing is a frequent cause of insidious bugs in multithreaded programs. We present a tool called SharC (short for Sharing Checker) that allows a user to write lightweight annotations to declare how they believe objects are being shared between threads in their program. SharC uses a combination of static and dynamic analyses to check that the program conforms to this specification.

Related papers