ABSTRACT
Students often have difficulty visualizing, understanding and debugging concurrent programs. Programming assignments involving concurrency are also difficult to grade. The output alone is not sufficient because the print statements from cooperating threads or processes can interfere with each other and garble the results. The remote logging tool described here allows multiple processes or threads to atomically log messages to a local or remote host. Different views of the messages are available in real time through a graphical user interface (GUI). The tool consists of two parts, a library for adding logging commands to a user program and a GUI for presenting different views of the logged messages. A separate logging library is needed for each programming language (e.g., C, C++, Java), but a single GUI works with all of these. A C logging library and a general GUI are available on the web.
- Atkin, B. and Sirer, E. G., "PortOS: an educational operating system for the Post-PC environment," Proc. 33rd SIGCSE Technical Symposium on Computer Science Education, 2002, pp. 116--120. Google ScholarDigital Library
- Barros, J. P.,"Advance CS courses: Specific proposals for the use of petri nets in a concurrent programming course," Proc. 7th Annual Conference on Innovation and Technology in Computer Science Education, 2002, pp. 165--167. Google ScholarDigital Library
- Carr, S., Feng, T. J., Mayo, J. and Ching-Kuang, S., "A communication library to support concurrent programming courses," Proc. 33rd SIGCSE Technical Symposium on Computer Science Education, 2002, pp. 360--364. Google ScholarDigital Library
- Exton, C.,"Elucidate: A tool to aid comprehension of concurrent object oriented execution," Proc. 5th Annual SIGCSE/SIGQUE conference on Innovation and Technology in Computer Science Education, 2000, pp. 33--36. Google ScholarDigital Library
- Holland, D. A., Lim, A. T. and Seltzer, M. I., "A new instructional operating system," Proc. 33rd SIGCSE Technical Symposium on Computer Science Education, 2002, pp. 111--115. Google ScholarDigital Library
- McDonald, C. and Kazemi, K., "Teaching parallel algorithm with process topologies," Proc. 32rd SIGCSE Technical Symposium on Computer Science Education, 2001, pp. 70--74. Google ScholarDigital Library
- Robbins, S., "Exploration of process interaction in operating systems: a pipe-fork simulator," Proc. 33rd SIGCSE Technical Symposium on Computer Science Education, 2002, pp. 351--355. Google ScholarDigital Library
- Robbins, K. and Robbins, S., Practical UNIX Programming, A Guide to Concurrency, Communication, and Multithreading, Prentice Hall, 1996. Google ScholarDigital Library
- Robbins, S., "Remote logging in Java using Jeli: A facility to enhance development of accessible educational software," Proc. 31st SIGCSE Technical Symposium on Computer Science Education, 2000, pp. 114--118. Google ScholarDigital Library
- Robbins, S., Logging Facility, 2002. Online. Internet. Available WWW: http://vip.cs.utsa.edu/nsf/logging/Google Scholar
Index Terms
- Using remote logging for teaching concurrency
Recommendations
Using remote logging for teaching concurrency
Students often have difficulty visualizing, understanding and debugging concurrent programs. Programming assignments involving concurrency are also difficult to grade. The output alone is not sufficient because the print statements from cooperating ...
Autolocker: synchronization inference for atomic sections
POPL '06: Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languagesThe movement to multi-core processors increases the need for simpler, more robust parallel programming models. Atomic sections have been widely recognized for their ease of use. They are simpler and safer to use than manual locking and they increase ...
Autolocker: synchronization inference for atomic sections
Proceedings of the 2006 POPL ConferenceThe movement to multi-core processors increases the need for simpler, more robust parallel programming models. Atomic sections have been widely recognized for their ease of use. They are simpler and safer to use than manual locking and they increase ...
Comments