Detail publikace

Healing Data Races On-The-Fly

KŘENA, B. LETKO, Z. TZOREF-BRILL, R. UR, S. VOJNAR, T.

Originální název

Healing Data Races On-The-Fly

Typ

článek ve sborníku mimo WoS a Scopus

Jazyk

angličtina

Originální abstrakt

Testing of concurrent software is extremely difficult. Despite all theprogress in the testing and verification technology, concurrent bugs,the most common of which are deadlocks and races, make it to the field.This paper describes a set of techniques, implemented in a tool calledConTest, allowing concurrent programs to self-heal at run-time.

Concurrent bugs have the very desirable property for healing thatsome of the interleaving produce correct results while in others bugsmanifest. Healing concurrency problems is about limiting, or changingthe probability of interleaving, such that bugs will be seenless.  When healing concurrent programs, if a deadlock does notresult from limiting the interleaving, we are sure that the result ofthe healed program could have been in the original program andtherefore no new functional bug has been introduced.

In this initial work which deals with different types of data races,we suggest three types of healing mechanisms:  (1)changing theprobability of interleaving by introducing sleep or yield statements orby changing thread priorities, (2) removing interleaving usingsynchronisation commands like locking and unlocking certain mutexes orwaits and notifies, and (3) removing the result of "bad interleaving"by replacing the value of variables by the one that "should" have beentaken. We also classify races according to the relevant healingstrategies to apply.

Klíčová slova

Concurrency, Testing, Self-Healing

Autoři

KŘENA, B.; LETKO, Z.; TZOREF-BRILL, R.; UR, S.; VOJNAR, T.

Rok RIV

2007

Vydáno

9. 7. 2007

Nakladatel

Association for Computing Machinery

Místo

London

ISBN

978-1-59593-734-6

Kniha

Proceedings of 5th International Workshop on Parallel and Distributed Systems: Testing and Debugging Modelling - PADTAD'07

Strany od

54

Strany do

64

Strany počet

11

BibTex

@inproceedings{BUT28803,
  author="Bohuslav {Křena} and Zdeněk {Letko} and Rachel {Tzoref} and Shmuel {Ur} and Tomáš {Vojnar}",
  title="Healing Data Races On-The-Fly",
  booktitle="Proceedings of 5th International Workshop on Parallel and Distributed Systems: Testing and Debugging Modelling - PADTAD'07",
  year="2007",
  pages="54--64",
  publisher="Association for Computing Machinery",
  address="London",
  isbn="978-1-59593-734-6"
}