Linux kernel projects for an undergraduate operating systems course

  • Authors:
  • Rob Hess;Paul Paulson

  • Affiliations:
  • Oregon State University, Corvallis, OR, USA;Oregon State University, Corvallis, OR, USA

  • Venue:
  • Proceedings of the 41st ACM technical symposium on Computer science education
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

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.