• DocumentCode
    1690180
  • Title

    Invariant-based specification, synthesis, and verification of synchronization in concurrent programs

  • Author

    Deng, Xianghua ; Dwyer, Matthew B. ; Hatcliff, John ; Mizuno, Masaaki

  • Author_Institution
    Dept. of Comput. & Inf. Sci., Kansas State Univ., Manhattan, KS, USA
  • fYear
    2002
  • Firstpage
    442
  • Lastpage
    452
  • Abstract
    Concurrency is used in modern software systems as a means of addressing performance, availability, and reliability requirements. Using current technologies developers are faced with a tension between correct synchronization and performance. Unfortunately, simple approaches can result in significant run-time overhead. Implementing more sophisticated synchronization policies may improve run-time performance and satisfy synchronization requirements, but fundamental difficulties in reasoning about concurrency make it difficult to assess their correctness. The paper describes an approach to automatically synthesizing complex synchronization implementations from formal high-level specifications. Moreover, the generated code is designed to be processed easily by software model-checking tools such as Bandera. This enables the generated synchronization solutions to be verified for important system correctness properties. We believe this is an effective approach because the tool-support provided makes it simple to use, it has a solid semantic foundation, it is language independent, and we have demonstrated that it is powerful enough to solve numerous challenging synchronization problems.
  • Keywords
    concurrency control; formal specification; formal verification; software tools; synchronisation; availability; component execution; concurrency; concurrent programs; formal high-level specifications; invariant-based specification; invariant-based synthesis; invariant-based verification; multiple independently executing components; performance; reliability; software model-checking tools; software systems; synchronization; system correctness properties; Application software; Availability; Collaboration; Concurrent computing; Modems; Process design; Runtime; Software systems; Software tools; System performance;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering, 2002. ICSE 2002. Proceedings of the 24rd International Conference on
  • Conference_Location
    Orlando, FL, USA
  • Print_ISBN
    1-58113-472-X
  • Type

    conf

  • Filename
    1007989