Abstract

Multi-core techniques have been widely used in various hardware platforms, promoting development of concurrent programs. Unfortunately, concurrent programs are prone to concurrency errors. At present, it is still an open issue to provide high coverage detection of concurrency errors. In this paper, we present an enhanced dynamic concurrency error detection technique, called PVcon, which can detect more concurrency errors than existing techniques. PVcon first finds suspicious locations of concurrency errors by applying a novel relation, elastic-causalities (EC), and then strictly verifies each suspicious concurrency errors with a lightweight intentional scheduling technique. We have implemented PVcon in C/C++ and evaluated it by localizing concurrency errors from real-world programs. The experimental results show that PVcon can efficiently detect twice more concurrency errors than other techniques.

Highlights

  • To efficiently utilize hardware resources, concurrent programs are widely developed and adopted in modern multi-core hardware platforms

  • Concurrent programs are prone to concurrency errors [1]–[3] and it is challenging to debug, detect and repair concurrency errors

  • It can be seen from the figure that with the widespread adoption of multi-threaded programming, security loopholes caused by data race have increased in recent years

Read more

Summary

Introduction

To efficiently utilize hardware resources, concurrent programs are widely developed and adopted in modern multi-core hardware platforms. Concurrency errors would cause incorrect outputs, data losses and even system crashes [4]–[6]. They have become a great threat to modern concurrent systems. The number of security loopholes caused by data was around 100 in 2019. It can be seen from the figure that with the widespread adoption of multi-threaded programming, security loopholes caused by data race have increased in recent years

Objectives
Results
Conclusion

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.