Abstract
This paper describes an approach to teaching an undergraduate operating systems course that relies on three aspects. First, a standard textbook is used for the basic theoretical material. Second, programming projects are used to reinforce some of the material covered from the textbook. Lastly, simulators are used to illustrate other material. A key to the approach is to use experimentation by the student to enhance understanding and prepare them for research. Although no formal evaluation has been done, students seem to enjoy using the simulators and student performance on exams has increased since the simulators were introduced.
- G. Barnett, CPU Scheduling Simulator, 2008, Online, Internet. Online. Internet. Available WWW: http://www.codeplex.com/cpussGoogle Scholar
- A. Itai and M. Rodah, "Symmetry breaking in distributive networks," Proc. Twenty-Second Annual IEEE Symposium on the Foundations of Computer Science, 1981, pp.150--158. Google ScholarDigital Library
- R. Jain, The Art of Computer Systems Performance Analysis, John Wiley & Sons, Inc, 1991.Google Scholar
- M. Javad and I. Khan, "Simulation and performance comparison of four disk scheduling algorithms." TENCON 2000 Proceedings, 2000, pp. 10--15.Google Scholar
- G. Nutt, Operating System Projects for Windows NT, Addison-Wesley, 1998. Google ScholarDigital Library
- G. Nutt, Operating Systems, Third Edition, Addison-Wesley, 2003. Google ScholarDigital Library
- R. Ontko and A. Reeder, Modern Operating Systems Simulators, Online. Internet. Available WWW: http://www.ontko.com/mossGoogle Scholar
- S. Leffler, M. McKusick, M. Karels, and J. Quartermain, The Design and Implementation of the 4.3BSD UNIX Operating System,, Addison Wesley, 1988. Google ScholarDigital Library
- S. Robbins, S. and K. A. Robbins, "Empirical exploration in undergraduate operating systems," Proc. 30-th SIGCSE Technical Symposium on Computer Science Education, (1999) pp. 311--315. Google ScholarDigital Library
- S. Robbins, "Experimentation with bounded buffer synchronization," Proc. 31-st SIGCSE Technical Symposium on Computer Science Education, (2000), pp. 330--334. Google ScholarDigital Library
- S. Robbins, "Starving philosophers: Experimentation with monitor synchronization," Proc. 32-nd SIGCSE Technical Symposium on Computer Science Education, (2001), pp. 317--321. Google ScholarDigital Library
- S. Robbins, "Exploration of process interaction in operating systems: A pipe-fork simulator," Proc. 33-rd SIGCSE Technical Symposium on Computer Science Education, (2002), pp. 351--355. Google ScholarDigital Library
- K. Robbins and S. Robbins, UNIX Systems Programming, Prentice Hall, 2003.Google Scholar
- S. Robbins, S., "A disk head scheduling simulator," Proc. 35-rd SIGCSE Technical Symposium on Computer Science Education, (2004), pp 325--329. Google ScholarDigital Library
- S. Robbins, "An address translation simulator," Proc. 36-th SIGCSE Technical Symposium on Computer Science Education, (2005), pp. 515--519. Google ScholarDigital Library
- S. Robbins, "A UNIX concurrent I/O simulator," Proc. 37-th SIGCSE Technical Symposium on Computer Science Education, (2006), pp. 303--307. Google ScholarDigital Library
- S. Robbins, Simulators for teaching operating systems, 2006. Online. Internet. Available WWW: http://vip.cs.utsa.edu/simulatorsGoogle Scholar
- S. Robbins, Operating Systems Curriculum, 2008. Online. Internet. Available WWW: http://vip.cs.utsa.edu/OSGoogle Scholar
- R. Rybacki, K. A. Robbins, and S. Robbins, "Ethercom: A study of audio processes and synchronization," Proc. 24-th SIGCSE Technical Symposium on Computer Science Education, (1993) pp. 218--222. Google ScholarDigital Library
- A. Silberschatz, P. B. Galvin and G. Gagne, Operating System Concepts, Seventh Edition, John Wiley and Sons, Inc, 2005. Google ScholarDigital Library
- Stallings, W., Operating Systems: Internals and Design Principles, 5th Edition,, Prentice Hall, 2004. Google ScholarDigital Library
- A. Tanenbaum, Modern Operating Systems, Second Edition, Prentice Hall, 2001. Google ScholarDigital Library
Index Terms
- A three pronged approach to teaching undergraduate operating systems
Recommendations
Teaching operating systems and machine architecture—more on the hands-on laboratory approach
SIGCSE '81: Proceedings of the twelfth SIGCSE technical symposium on Computer science educationThe “hands-on” laboratory approach to teaching operating systems has been used at West Virginia University since August 1971 [3, 6, 8]. In 1977 a Digital Equipment Corporation (DEC) PDP-11/34 system replaced the IBM 1130 system previously used for the ...
Teaching operating systems and machine architecture—more on the hands-on laboratory approach
Proceedings of the 12th SIGCSE symposium on Computer science educationThe “hands-on” laboratory approach to teaching operating systems has been used at West Virginia University since August 1971 [3, 6, 8]. In 1977 a Digital Equipment Corporation (DEC) PDP-11/34 system replaced the IBM 1130 system previously used for the ...
Implementation and Outcomes of a Three-Pronged Approach to Professional Development for CS Principles
SIGCSE '16: Proceedings of the 47th ACM Technical Symposium on Computing Science EducationOne of the greatest challenges in broadening participation in computer science is teacher preparation, as few middle and high school teachers have a formal background in computing. Further, without a credentialing program, there are limited ways to ...
Comments