A UNIX clone with source code for operating systems courses
ACM SIGOPS Operating Systems Review
A new instructional operating system
SIGCSE '02 Proceedings of the 33rd SIGCSE technical symposium on Computer science education
Learning by doing: introducing version control as a way to manage student assignments
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Experiences teaching operating systems using virtual platforms and linux
Proceedings of the 36th SIGCSE technical symposium on Computer science education
Configuring a multi-course lab for system-level projects
Proceedings of the 36th SIGCSE technical symposium on Computer science education
The pintos instructional operating system kernel
Proceedings of the 40th ACM 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
Monitoring student progress using virtual appliances: A case study
Computers & Education
Teaching operating systems using android
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Reading mobile games throughout the curriculum
Proceeding of the 44th ACM technical symposium on Computer science education
Automated online grading for virtual machine-based systems administration courses
Proceeding of the 44th ACM technical symposium on Computer science education
Git on the cloud in the classroom
Proceeding of the 44th ACM technical symposium on Computer science education
From cluster to cloud to appliance
Proceedings of the 18th ACM conference on Innovation and technology in computer science education
Teaching operating systems using code review
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
Students learn more through hands-on project experience for computer science courses such as operating systems, but providing the infrastructure support for a large class to learn by doing can be hard. To address this issue, we introduce a new approach to managing and grading operating system homework assignments based on virtual appliances, a distributed version control system, and live demonstrations. Our solution is easy to deploy and use with students' personal computers, and obviates the need to provide a computer laboratory for teaching purposes. It supports the most demanding course projects, such as those that involve operating system kernel development, and can be used by both on-campus and remote distance learning students even with intermittent network connectivity. Our experiences deploying and using this solution to teach operating systems at Columbia University show that it is easier to use, more flexible, and more pedagogically effective than other approaches.