Practical UNIX programming: a guide to concurrency, communication, and multithreading
Practical UNIX programming: a guide to concurrency, communication, and multithreading
Proceedings of the thirty-first SIGCSE technical symposium on Computer science education
Using remote logging for teaching concurrency
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
ThreadMentor: a pedagogical tool for multithreaded programming
Journal on Educational Resources in Computing (JERIC)
A three pronged approach to teaching undergraduate operating systems
ACM SIGOPS Operating Systems Review
Using Graphviz as a Low-cost Option to Facilitate the Understanding of Unix Process System Calls
Electronic Notes in Theoretical Computer Science (ENTCS)
Exploring misconceptions of operating systems in an online course
Proceedings of the 13th Koli Calling International Conference on Computing Education Research
Hi-index | 0.00 |
This paper examines the use of a simulator to explore process interaction in Unix. The simulator allows instructors to trace through a variety of programs and to show how the processes and pipes are connected. Students can create C language programs and see how changes in their code or changes in process scheduling affect the configuration of the processes and pipes as well as the output of the program. Students can also see the consequences of not protecting critical sections in an executing program. The simulator is flexible enough to allow the creation of process fans, chains and trees as well as unidirectional and bidirectional rings. The program is written in Java and can be run as a standalone application or as an applet from a browser.