Betriebssysteme · Institut für Systemarchitektur · Fakultät Informatik · TU Dresden

11. 03. 2011

Mathematizing C++ Concurrency

Mark Batty

University of Cambridge

The next versions of C++ (C++0x) and of C (C1X) will have new concurrency features, aiming to support high-performance code with well-defined semantics. Unfortunately, as we near the end of the long standardization process, not all has been well. Unsurprisingly, the prose specification style of the draft standards is poorly suited to describe the complex design of the relaxed memory model, and in fact there have been significant problems.

I will discuss work on formalization of the memory model, what was broken, and some resulting improvements to the C++0x draft standard. In addition I will present a tool, Cppmem, for graphically exploring the semantics of small concurrent C++0x programs, and describe a proof of the correctness of a compilation strategy targeting x86-TSO.
25. Jun 2020
· Copyright © 2001-2019 Operating Systems Group, TU Dresden | Impressum ·