CSCI 320 - Operating Systems & Concurrency
Spring 2019
Bare Metal Programming Assignment 1
Requirements
- Create a working program in Rust that does not use an operating system.
- It should compile to a bootimage file that runs using Qemu.
- It should display output using the VGA buffer.
- It must use hardware input. The keyboard is recommended, but the mouse or touchpad would
also be acceptable.
- It is recommended that you use the program from class as a starting point.
Grading Criteria
- Successfully boots on Qemu: 6 points
- Delivers an interesting output in response to a single input: 4 points
- Delivers at least four rounds of input and output demonstrating a cumulative behavior
without crashing: 8 points
- No input provokes a double fault: 2 points
- No input provokes a full system crash: 2 points
- Total: 22 points