Operating systems: design and implementation
Operating systems: design and implementation
An overview of the SR language and implementation
ACM Transactions on Programming Languages and Systems (TOPLAS)
An introduction to operating systems (2nd ed.)
An introduction to operating systems (2nd ed.)
Operating system concepts (3rd ed.)
Operating system concepts (3rd ed.)
Animating operating systems algorithms with XTANGO
SIGCSE '94 Proceedings of the twenty-fifth SIGCSE symposium on Computer science education
Tools for teaching CCRs, monitors, and CSP concurrent programming concepts
ACM SIGCSE Bulletin
Integrating XTANGO's animator into the SR concurrent programming language
ACM SIGGRAPH Computer Graphics
A hypermedia lab manual for operating systems: using the network to teach
ITiCSE '96 Proceedings of the 1st conference on Integrating technology into computer science education
A short unit to introduce multi-threaded programming
Journal of Computing Sciences in Colleges
Hi-index | 0.00 |
In undergraduate operating systems classes, students learn about concurrent process synchronization, including such things as shared data, race conditions, critical sections, mutual exclusion, semaphores, monitors, and the test-and-set hardware instruction. They also study interprocess communication, message passing, rendezvous, and remote procedure calls. Solutions to classical problems, such as the dining philosophers, producers and consumers, bounded buffers, and readers and writers, are presented using the above concepts. However, students need to write programs in a language that provides facilities for concurrent programming in order to appreciate fully the above concepts. This paper describes the SR language and discusses its successful use as an environment for concurrent programming in an undergraduate operating systems class.