Result Details

Discovering Concurrency Errors

LOURENCO, J.; FIEDOR, J.; KŘENA, B.; VOJNAR, T. Discovering Concurrency Errors. In Lectures on Runtime Verification: Introductory and Advanced Topics. Lecture Notes in Computer Science, vol 10457. Cham: Springer International Publishing, 2018. p. 34-60. ISBN: 978-3-319-75632-5.
Type
chapter in a book
Language
English
Authors
Lourenco Joao, FIT (FIT)
Fiedor Jan, Ing., Ph.D., DITS (FIT)
Křena Bohuslav, Ing., Ph.D., DITS (FIT)
Vojnar Tomáš, prof. Ing., Ph.D., DITS (FIT)
Abstract

Lots of concurrent software is being developed for the now ubiquitous multicore processors. And concurrent programming is diffi- cult because it is quite easy to introduce errors that are really hard to diagnose and fix. One of the main obstacles to concurrent program- ming is that threads are scheduled nondeterministically and their inter- actions may become hard to predict and to devise. This chapter addresses the nature of concurrent programming and some classes of concurrency errors. It discusses the application of dynamic program analysis tech- niques to detect, locate and diagnose some common concurrency errors like data races, atomicity violations and deadlocks. This chapter also mentions some techniques that can help with quality assurance of con- current programs, regardless of any particular class of concurrency errors, like noise injection and systematic testing, and it is closed by some prospects of concurrent software development.

Keywords

Software correctness, quality assurance, nondeterminism, concurrency errors, atomicity violations, data races, deadlocks, dynamic analysis, noise injection.

URL
Published
2018
Pages
34–60
Book
Lectures on Runtime Verification: Introductory and Advanced Topics
Series
Lecture Notes in Computer Science, vol 10457
ISBN
978-3-319-75632-5
Publisher
Springer International Publishing
Place
Cham
DOI
EID Scopus
BibTeX
@inbook{BUT155054,
  author="Joao {Lourenco} and Jan {Fiedor} and Bohuslav {Křena} and Tomáš {Vojnar}",
  title="Discovering Concurrency Errors",
  booktitle="Lectures on Runtime Verification: Introductory and Advanced Topics",
  year="2018",
  publisher="Springer International Publishing",
  address="Cham",
  series="Lecture Notes in Computer Science, vol 10457",
  pages="34--60",
  doi="10.1007/978-3-319-75632-5\{_}2",
  isbn="978-3-319-75632-5",
  url="https://doi.org/10.1007/978-3-319-75632-5_2"
}
Files
Projects
AQUAS: Aggregated Quality Assurance for Systems, EU, Horizon 2020, 8A17001, 737475, start: 2017-05-01, end: 2020-04-30, completed
Bezpečné a spolehlivé počítačové systémy, BUT, Vnitřní projekty VUT, FIT-S-17-4014, start: 2017-03-01, end: 2020-02-29, completed
IT4Innovations excellence in science, MŠMT, Národní program udržitelnosti II, LQ1602, start: 2016-01-01, end: 2020-12-31, completed
Research groups
Departments
Back to top