OBJECT-ORIENTED PROGRAMMING, SYSTEMS, LANGUAGES and APPLICATIONS
 
 
Program
 


Program (2mb PDF)

Explore
  Invited Speakers
  Onward!
  Panels
  Workshops
Discover
  Research Papers
  Student Research Comp.
  Posters
  Doctoral Symposium
  Educators' Symposium
  Wiki Symposium
  Dynamic Lang. Symp.
Understand
  Tutorials
  Essays
  Practitioner Reports
  Demonstrations
Create
  DesignFest
  Lightning Talks
  FlashBoF
  Instant Arts School Exp.
 
Other Events
 
Resort Map (364kb PDF)
 
Resort Map (JPG)

 

 
Basket
 

view, help

"Visual OS: An Object-Oriented Approach to Teaching Operating System Concepts"

 

 
Page
 

Printer-friendly

 
 
  > Educators' Symposium > Demos and Posters



Visual OS: An Object-Oriented Approach to Teaching Operating System Concepts

James Hill, Institute for Software Integrated Systems, Vanderbilt University
Aniruddha Gokhale, Institute for Software Integrated Systems, Vanderbilt University

An operating system can be viewed as an assembly of numerous interacting components, each providing a distinct functionality, such as CPU scheduling, disk scheduling, virtual memory and paging, collaborating to efficiently manage the hardware and resources of a computer system. Understanding the features of these components and the interplay between them can be a non-trivial task, in particular, for undergraduate students in Computer Science studying Operating Systems. To aid in their understanding of the OS dynamics, a number of aids including textbooks, journals and simulators exist. Although these aids suffice to understand simple OS concepts, some algorithms, such as paging, synchronization and process control, and their interactions are too complex to understand without a way to visualize their separation of concerns, and provide individual focus for better understanding.

This paper provides three contributions to using object-oriented technology to build and teach operating systems educational tools. First, we describe the design architecture of Visual OS, which is our OS educational tool that incorporates visualization and an object-oriented patterns-based approach to teaching operating systems. Second, we describe a programming assignment using Visual OS in a senior level OS class at Vanderbilt University. Lastly, we describe our experience using Visual OS.

 
.