• DocumentCode
    1921909
  • Title

    A learning system for the problem of mutual exclusion in multithreaded programming

  • Author

    Yoshida, Eisuke ; Kakugawa, Hirotsugu

  • Author_Institution
    Fac. of Eng., Hiroshima Univ., Japan
  • fYear
    2004
  • fDate
    30 Aug.-1 Sept. 2004
  • Firstpage
    2
  • Lastpage
    6
  • Abstract
    In this paper, we propose a GUI-based learning system for the problem of mutual exclusion in multithreaded programming (MTP) such as race conditions, deadlock and starvation. Threads are group of cooperating program executions with shared memory. A thread in execution is switched one after another, and thread executions are in concurrent. Because mutual exclusion is necessary for avoiding race conditions, understanding the problem of mutual exclusion and its solution is important for students. Deadlock and starvation are bugs of mutual exclusion algorithm such that threads are blocked forever, and threads cannot make progress, respectively. Finding such bugs is difficult because we must check every execution scheduling of threads. To this end, we have been developing a system for learning correct mutual exclusion algorithm in MTP. Our system is designed for university students studying computer science. Proposed system uses a model checking system to detect such bugs by analysis of multithreaded programs written in the MIPS R2000 assembly language. We describe the outline how learners use our system to understand the problem of mutual exclusion in MTP.
  • Keywords
    computer aided instruction; computer science education; concurrency theory; graphical user interfaces; multi-threading; program debugging; program diagnostics; GUI-based learning system; MIPS R2000 assembly language; bug detect; computer science; concurrent thread executions; cooperating program executions; deadlock; model checking system; multithreaded program analysis; multithreaded programming; mutual exclusion; race conditions; shared memory system; starvation; thread execution scheduling; university students; Computer bugs; Eyes; Learning systems; Processor scheduling; Software performance; Switches; System recovery; Timing; Visualization; Yarn;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Advanced Learning Technologies, 2004. Proceedings. IEEE International Conference on
  • Print_ISBN
    0-7695-2181-9
  • Type

    conf

  • DOI
    10.1109/ICALT.2004.1357363
  • Filename
    1357363