ACM Home Page
Please provide us with feedback. Feedback
ThreadMentor: a pedagogical tool for multithreaded programming
Full text PdfPdf (438 KB)
Source Journal on Educational Resources in Computing (JERIC) archive
Volume 3 ,  Issue 1  (March 2003) table of contents
Article No. 1  
Year of Publication: 2003
ISSN:1531-4278
Authors
Steve Carr  Michigan Technological University, Houghton
Jean Mayo  Michigan Technological University, Houghton
Ching-Kuang Shene  Michigan Technological University, Houghton
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 23,   Downloads (12 Months): 114,   Citation Count: 5
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/958795.958796
What is a DOI?

ABSTRACT

ThreadMentor is a multiplatform pedagogical tool designed to ease the difficulty in teaching and learning multithreaded programming. It consists of a C++ class library and a visualization system. The class library supports many thread management functions and synchronization primitives in an object-oriented way, and the visualization system is activated automatically by a user program and shows the inner working of every thread and every synchronization primitive on-the-fly. Events can also be saved for playback. In this way, students will be able to visualize the dynamic behavior of a threaded program and the interaction among threads and synchronization primitives.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
ACM/IEEE. 2001. <I>Computing Curricula 2001</I>. http://www.acm.org/sig/sigcse/ccs001/.
2
 
3
 
4
ANDREWS, G. R. 2000. <I>Foundations of Multithreaded, Parallel, and Distributed Programming</I>. Addison-Wesley.
 
5
6
 
7
BEDY, M., CARR, S., HUANG, X., AND SHENE, C.-K. 1999. The design and construction of a user-level kernel for teaching multithreaded programming. In <I>29th ASEE/IEEE Frontiers in Education.</I> Vol. II. (13a3-24)-(13a3-29).
8
 
9
 
10
11
12
13
14
15
16
17
 
18
19
 
20
21
22
 
23
CARR, S., FANG, C., JOZWOWSKI, T. R., MAYO, J.,AND SHENE, C.-K. 2003. ConcurrentMentor: a visualization system for distributed programming education. In<I> Proceedings of the 2003 International Conference on Parallel and Distributed Processing Techniques and Applications.</I> 1676-1682.
 
24
 
25
CARR, S., MAYO, J., AND SHENE, C.-K. 2002. Teaching multithreaded programming made easy (workshop). In <I>Proceedings of the ACM 33rd SIGCSE Technical Symposium.</I> 420.
 
26
CARR, S., MAYO, J., AND SHENE, C.-K. 2003. Teaching multithreaded programming made easy using ThreadMentor (workshop). In <I>Proceedings of the ACM 34th SIGCSE Technical Symposium</I>. 409.
27
 
28
CHAO, C. S. AND LIU, A. C. 2000. A visualization modeling framework for a csp-based system. <I>J. Visual Lang. Comput. 11</I>, 83-103.
29
30
31
 
32
33
 
34
HARTLEY, S. J. 1992. An operating system laboratory based on the SR (Synchronizing Resources) programming language. <I>Comput. Sci. Educ. 3</I>, 251-276.
35
36
37
38
39
40
41
42
43
44
 
45
KRAEMER, E. 1998. Visualizing concurrent programs. In <I>Software Visualization</I>, J. Stasko, J. Domingue, M. H. Brown, and B. A. Price, Eds. MIT Press, 237-256.
46
47
48
 
49
50
 
51
 
52
MATTIS, P., KIMBALL, S., AND MACDONALD, J. 2002. GTK+--The GIMP Toolkit. Available at http://www.gtk.org.
53
54
 
55
56
 
57
PANCAKE, C. M. 1996. Visualization techniques for parallel debugging and performance-tuning tools. In <I>Parallel Computing: Paradigm and Applications</I>, A. Y. Zomay, Ed. International Thomson Computer Press, 376-393.
58
59
 
60
PRICE, B. A. AND BAECKER, R. M. 1991. The automatic animation of concurrent programs. In <I>Proceedings of the First International Workshop on Computer-Human Interface.</I> 128-137.
61
62
63
64
 
65
ROMAN, G.-C., KENNETH C. COX, C. D. W., AND PLUN, J. Y. 1992. Pavane: a system for declarative visualization of concurrent computation. <I>J. Visual Lang. Comput. 3</I>, 161-193.
66
67
 
68
SHENE, C.-K. 2001. Multithreaded programming with ThreadMentor: a tutorial. http://www.cs.mtu.edu/~shene/NSF-3/e-Book/index.html.
 
69
SHENE, C.-K. 2002. Multithreaded programming can strengthen an operating systems course. <I>Comput. Sci. Edu. J. 12</I>, 4 (Dec.), 275-299.
 
70
SHENE, C.-K. AND CARR, S. 1998. The design of a multithreaded programming course and its accompanying software tools. <I>J. Comput. Small Colleges 14</I>, 1, 12-24.
 
71
 
72
STALLINGS, W. 2001. <I>Operating Systems</I>, 4th ed. Prentice Hall.
 
73
 
74
STASKO, J. T. 1995. The PARADE environment for visualizing parallel program executions: a progress report. Tech. Rep. GIT-GVU-95-03, Georgia Institute of Technology, College of Computing.
 
75
 
76
 
77
78
79
 
80
ZHANG, K., HINTZ, T., AND MA, X. 1999. The role of graphics in parallel program development. <I>J. Visual Lang. Comput. 10</I>, 215-243.
 
81
ZHAO, Q. A. AND STASKO, J. T. 1995. Visualizing the execution of threads-based parallel programs. Tech. Rep. GIT-GVU-95-01, George Institute of Technology, College of Computing. January.
82


Collaborative Colleagues:
Steve Carr: colleagues
Jean Mayo: colleagues
Ching-Kuang Shene: colleagues