A Certified Thread Library for Multithreaded User Programs

Yu Guo,Xinyu Jiang,Yiyun Chen,Chunxiao Lin
DOI: https://doi.org/10.1109/tase.2007.1
2007-01-01
Abstract:Ensuring the safety of multithreaded software is a task both important and challenging. Currently, most ap- proaches focus on the safety of multithreaded programs rather than the runtime based on which those concurrent programs run. In order to fundamentally solve this problem, a method of ensuring the safety of the runtime should be de- veloped. Such a runtime could be organized as a thread library typically. This paper presents the development and certification of a simple but realistic thread library. The thread library provides common multi-threading features such as dynamic thread creation, termination and joining as well. This li- brary also carries machine-checkable proof which guaran- tees the library does not violate the safety policies. This paper also presents an approach to link the library to exist- ing certified multithreaded user programs to form an inte- grated foundational proof-carrying code (FPCC) package. Comparing with the uncertified libraries, our work makes multithreaded applications much more reliable.
What problem does this paper attempt to address?