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
fDate :
30 Aug.-1 Sept. 2004
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;
Conference_Titel :
Advanced Learning Technologies, 2004. Proceedings. IEEE International Conference on
Print_ISBN :
0-7695-2181-9
DOI :
10.1109/ICALT.2004.1357363