A simple machine simulator for teaching stack frames

  • Authors:
  • Dino Schweitzer;Jeff Boleng

  • Affiliations:
  • USAF Academy, USAFA, CO, USA;USAF Academy, USAFA, CO, USA

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

Quantified Score

Hi-index 0.00

Visualization

Abstract

Stack frames are a fundamental concept in computer science often taught in an operating systems or an assembly language programming course. Computer security courses also rely on an understanding of stack frame concepts when teaching buffer overflow attacks. To assist students in learning the fundamentals of stack frames and related concepts, we have developed an interactive Simple Machine Simulator tool that allows students to step through a C-like language program and watch how memory changes. We have used this tool successfully in various courses to teach different aspects of stack frames and their use. This paper will describe the tool, how it is used to teach stack frame concepts, our experience, and future plans.