Analyzing Concurrent Programs Title for Potential Programming Errors
Keyword(s):
Today, multi-core/multi-processor hardware has become ubiquitous, leading to a fundamental turning point on software development. However, developing concurrent programs is difficult. Concurrency introduces the possibility of errors that do not exist in sequential programs. This chapter introduces the major concurrent programming models including multithreaded programming on shared memory and message passing programming on distributed memory. Then, the state-of-the-art research achievements on detecting concurrency errors such as deadlock, race condition, and atomicity violation are reviewed. Finally, the chapter surveys the widely used tools for testing and debugging concurrent programs.
2013 ◽
Vol 765-767
◽
pp. 1576-1580
◽
2013 ◽
Vol 18
◽
pp. 149-158
◽
2016 ◽
Vol 26
(03)
◽
pp. 1650014
◽
1992 ◽
Vol 6
(1)
◽
pp. 98-111
◽
Keyword(s):
2013 ◽
Vol 184
(4)
◽
pp. 1191-1202
◽
2020 ◽
Vol 30
(3)
◽
pp. 28-33
◽