A UNIX clone with source code for operating systems courses
ACM SIGOPS Operating Systems Review
Production programming in the classroom
SIGCSE '03 Proceedings of the 34th SIGCSE technical symposium on Computer science education
The Nachos Instructional Operating System
The Nachos Instructional Operating System
Experiences teaching operating systems using virtual platforms and linux
Proceedings of the 36th SIGCSE technical symposium on Computer science education
A survey of contemporary instructional operating systems for use in undergraduate courses
Journal of Computing Sciences in Colleges
Linux Device Drivers, 3rd Edition
Linux Device Drivers, 3rd Edition
Linux Kernel Development (2nd Edition) (Novell Press)
Linux Kernel Development (2nd Edition) (Novell Press)
Open source projects in programming courses
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Can humanitarian open-source software development draw new students to CS?
Proceedings of the 38th SIGCSE technical symposium on Computer science education
Using iPodLinux in an introductory OS course
Proceedings of the 39th SIGCSE technical symposium on Computer science education
VIREOS: an integrated, bottom-up, educational operating systems project with FPGA support
Proceedings of the 42nd ACM technical symposium on Computer science education
Structured linux kernel projects for teaching operating systems concepts
Proceedings of the 42nd ACM technical symposium on Computer science education
Follow the river and you will find the C
Proceedings of the 42nd ACM technical symposium on Computer science education
OS project implementation: multiprogramming with threads
Journal of Computing Sciences in Colleges
Teaching operating systems using android
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Visualization of student-implemented OS algorithms in Java
Journal of Computing Sciences in Colleges
Developing a pre- and post-course concept inventory to gauge operating systems learning
Proceedings of the 45th ACM technical symposium on Computer science education
A virtual graphics card for teaching device driver design
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
In this paper, we present a series of programming projects based on the Linux kernel for students in a senior-level undergraduate operating systems course. The projects we describe cover several key operating systems concepts, including process scheduling, I/O scheduling, memory management, and device drivers. In addition, we assess these projects along several dimensions, from their difficulty to their capacity to help students understand operating systems concepts, based on six terms (three years) of detailed student exit surveys along with observations and anecdotal evidence. Through this assessment, we conclude that our Linux-based projects are an effective means by which to teach operating systems concepts and, additionally, that students' response to these projects is overwhelmingly positive.