Product Details

Atomer: Atomicity Violations Analyser, Version 2.0

Created: 2022

Czech title
Atomer: detektor porušení atomičnosti, verze 2.0
Type
software
License
In order to use the result by another entity, it is always necessary to acquire a license
License Fee
The licensor does not require a license fee for the result
Authors
Keywords

Concurrent programs, multithreaded programs, low-level synchronisation, mutexes,
atomicity, static analysis, abstract interpretation, function summaries,
Meta/Facebook Infer.

Description

Atomer version 2.0 is the second version of a static detector of violations of
atomicity of call sequences in concurrent programs written in the C language
using low-level synchronisation by explicit mutex locking and unlocking. The tool
is a static analyser based on abstract interpretation and function summaries,
which are computed along the call tree, starting from its leaves so as to achieve
good scalability. The detector is implemented in OCaml as a plugin of the
Meta/Facebook Infer Framework.

Compared to the first version, support for various types of locks (re-entrant
locks, locks with a limited validity range and automatic unlocking, etc.) has
been added, the analysis has been made more precise (by adding static resolution
of lock instances), the analysis mechanism for passing parameters between
analysed functions has been improved, and various other improvements have been
made to the abstract domains and operations over them, which are motivated by the
desire for higher accuracy and better scalability of the analysis.

Location
License Conditions

Free software under the MIT license (cf. https://opensource.org/licenses/MIT).

Projects
Arrowhead Tools for Engineering of Digitalisation Solutions, MŠMT, Společná technologická iniciativa ECSEL, 8A19010, start: 2019-05-01, end: 2022-07-31, completed
Research groups
Departments
Back to top