Title
Frightening Small Children and Disconcerting Grown-ups: Concurrency in the Linux Kernel.
Abstract
Concurrency in the Linux kernel can be a contentious topic. The Linux kernel mailing list features numerous discussions related to consistency models, including those of the more than 30 CPU architectures supported by the kernel and that of the kernel itself. How are Linux programs supposed to behave? Do they behave correctly on exotic hardware? A formal model can help address such questions. Better yet, an executable model allows programmers to experiment with the model to develop their intuition. Thus we offer a model written in the cat language, making it not only formal, but also executable by the herd simulator. We tested our model against hardware and refined it in consultation with maintainers. Finally, we formalised the fundamental law of the Read-Copy-Update synchronisation mechanism, and proved that one of its implementations satisfies this law.
Year
DOI
Venue
2018
10.1145/3173162.3177156
ASPLOS
Keywords
Field
DocType
formal models, linux, memory model, shared memory parallelism
Kernel (linear algebra),Programming language,Mailing list,Computer science,Concurrency,Implementation,Memory model,Consistency model,Linux kernel,Executable
Conference
Volume
Issue
ISSN
53
2
0362-1340
ISBN
Citations 
PageRank 
978-1-4503-4911-6
7
0.44
References 
Authors
2
5
Name
Order
Citations
PageRank
Jade Alglave160826.53
Luc Maranget280849.83
Paul E. McKenney327930.11
Andrea Parri470.44
Alan S. Stern5352.36