Abstract
It is widely accepted that hands-on experience is key to helping students get a better grasp of the concepts, techniques and technologies introduced in lectures. The following quote, attributed to Confucius, embodies the underlying philosophy quite well; “I hear and I forget, I see and I remember, I do and I understand”. This paper discusses the design and implementation of a set of laboratories for an introductory undergraduate lecture in Operating Systems Concepts (OSC). More specifically, we focus on exploring how the Linux kernel can be made even more suitable as a vector from which to learn operating systems’ internals. To this end, we present a new pedagogical approach to Linux-based OSC laboratories which addresses issues stemming from Linux‘s monolithic kernel architecture and its “real world” complexity. We also apply the lessons learned form educational operating systems (OS) and show how some of the assignments which are typically unsuitable for production-level OSes can be adapted to offer students the best of both world. This paper then describes how these ideas can be translated into a laboratory structure, which favors learning by scaffolding, and further develops this structure into a set of laboratories covering both “classical” and new topics in operating systems. The analysis of the technical and pedagogical features of these laboratories concludes this paper.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
SOFTICE project wiki, http://softice.lakeland.usf.edu/
Starving Philosophers: Experimentation with Monitor Synchronization, Steve Robins, 32$nd$ SIGCSE Technical Symp. on Computer Science Education, 2001, pp. 317-321.
A UNIX concurrent I/O simulator, Steven Robins, Proc. 37th SIGCSE Technical Symposium on Computer Science Education, 2006, pp. 303-307.
GeekOS, http://geekos.sourceforge.net/index.php
Nachos, http://www.cs.washington.edu/homes/tom/nachos/
Operating Systems, design and implementation 2/e, A.S. Tanenbaum and A.S. Woodhull, Prentice Hall, 1997
Topsy, http://www.tik.ee.ethz.ch/$∼ $topsy/
Kernel Projects for Linux, Gary Nutt, Addison Wesley, 2001,
Boot with Grub, Wayne Marshall, Linux Journal 2001/05/01, article 4622
Linux Device Drivers 3/e, Alessandro Rubini, Jonathan Corbet, O’Reilly & Associates, 2001
Evolving a Cache Affinity Scheduling Algorithm, CS6210 Special Project – Step 4 and Results, Charles Pippin and Micah Wedemeyer, College of Computing, Georgia Institute of Technology, November 30, 2003
Exploring the Scholarship of Teaching, C. Kreber, P.A. Cranton, Journal of Higher Education, Vol. 71, No. 4, 2000
Root-kits & Loadable Kernel Modules: Exploiting the Linux Kernel for Fun and (Educational) Profit, Alessio Gaspar and Clark Godwin, CCSC-SE, Consortium for computer Science in Colleges, South Eastern National Conference, 2006.
File Systems Forensic Analysis, B.Carrier, Pearson, 2005
Understanding the Linux Virtual Memory Manager, Mel Gorman’s, Bruce Perens Open Source Series.
A user-mode port of the Linux kernel, D.Jeff, 4th Linux Showcase & Conference, p.63, Atlanta, GA, 2000. Usenix,
A Secured Networked Laboratory for Kernel Programming, J. Mayo and P. Keans, TR97-1, Department of Computer Science, College of William and Mary, September 1997.
A Linux-Based Lab for Operating Systems and Network Courses, Linux Journal #41, R. Chapman, W. Carlisle, 1997
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2007 Springer
About this paper
Cite this paper
Gaspar, A., Langevin, S. (2007). New approaches for Linux-based Undergraduate Operating System Concepts Laboratories. In: Iskander, M. (eds) Innovations in E-learning, Instruction Technology, Assessment, and Engineering Education. Springer, Dordrecht. https://doi.org/10.1007/978-1-4020-6262-9_5
Download citation
DOI: https://doi.org/10.1007/978-1-4020-6262-9_5
Publisher Name: Springer, Dordrecht
Print ISBN: 978-1-4020-6261-2
Online ISBN: 978-1-4020-6262-9
eBook Packages: EngineeringEngineering (R0)