On verifying distributed multithreaded Java']Java programs

被引:1
|
作者
Chen, J [1 ]
机构
[1] Univ Windsor, Sch Comp Sci, Windsor, ON N9B 3P4, Canada
基金
加拿大自然科学与工程研究理事会;
关键词
!text type='Java']Java[!/text; multithreading; distributed system; model checking;
D O I
10.1023/A:1008982122316
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Distributed multithreaded software systems are becoming more and more important in modern networked environment. For these systems, concurrency control and thread synchronization make it much harder to do traditional extensive testing to guarantee the quality of the systems. In contrast to testing, software verification under certain formalisms and methodologies usually gives us higher confidence about the system. In this paper, we consider translating some parts of program code that are sensitive to concurrency control into certain formal description so that we can reuse existing verification tools to enhance our confidence in the final code. Java language is gaining increasing popularity in distributed multithreaded system development, and CCS is one of the convenient tools for describing concurrent and multi-process systems. Under a set of reasonable restrictions, we present a general framework on how to translate the thread control and synchronization portion of distributed, multithreaded Java programs into formal specification in CCS. With the translated process terms, we are able to use some model checkers to verify properties expressed in modal mu-calculus, such as invariance, eventualities, fairness etc, which are by nature hard to test.
引用
收藏
页码:321 / 341
页数:21
相关论文
共 50 条
  • [1] On verifying distributed multithreaded Java programs
    Chen, Jessica
    [J]. Proceedings of the Annual Hawaii International Conference on System Sciences, 2000, 2000-January
  • [2] On Verifying Distributed Multithreaded Java Programs
    Jessica Chen
    [J]. Software Quality Journal, 1999, 8 : 321 - 341
  • [3] JRastro: A trace agent for debugging multithreaded and distributed Java']Java programs
    da Silva, GJ
    Schnorr, LM
    Stein, BD
    [J]. 15TH SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING, PROCEEDINGS, 2003, : 46 - 54
  • [4] LCT: A Parallel Distributed Testing Tool for Multithreaded Java']Java Programs
    Kahkonen, Kari
    Saarikivi, Olli
    Heljanko, Keijo
    [J]. ELECTRONIC NOTES IN THEORETICAL COMPUTER SCIENCE, 2013, 296 : 253 - 259
  • [5] Visual debugging of multithreaded Java']Java programs
    Jackson, D
    [J]. IEEE SYMPOSIA ON HUMAN-CENTRIC COMPUTING LANGUAGES AND ENVIRONMENTS, PROCEEDINGS, 2001, : 340 - 341
  • [6] Exception analysis for multithreaded Java']Java programs
    Ryu, SY
    Yi, KK
    [J]. SECOND ASIA-PACIFIC CONFERENCE ON QUALITY SOFTWARE, PROCEEDINGS, 2001, : 23 - 30
  • [7] JayHorn: A Framework for Verifying Java']Java programs
    Kahsai, Temesghen
    Rummer, Philipp
    Sanchez, Huascar
    Schaf, Martin
    [J]. COMPUTER AIDED VERIFICATION, (CAV 2016), PT I, 2016, 9779 : 352 - 358
  • [8] Verifying temporal specifications of Java']Java programs
    Spegni, Francesco
    Spalazzi, Luca
    Liva, Giovanni
    Pinzger, Martin
    Bollin, Andreas
    [J]. SOFTWARE QUALITY JOURNAL, 2020, 28 (02) : 695 - 744
  • [9] Interprocedural slicing of multithreaded programs with applications to Java']Java
    Nanda, Mangala Gowri
    Ramesh, S.
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2006, 28 (06): : 1088 - 1144
  • [10] A thread monitoring system for multithreaded Java']Java programs
    Moon, Sewon
    Chang, Byeong-Mo
    [J]. ACM SIGPLAN NOTICES, 2006, 41 (05) : 21 - 29