CS 4414/5416:
Systems Programming
Lab 2: Process Registry
2026-09-04
Lab Logistics Reminder
Primary goal: Work together on something
- Fine to have small groups (up to 4)
- Grab a question sheet per person (as in lecture)
- Work on the lab assignment during the hour
Lab Stories
Stories:
- Last week: CPU idle sample counts
- This week and next: Process management
- Registry for what processes are alive
- Status of processes (running, sleeping, stopped)
Will deal with processes in more detail in a bit.
The real goal for now is learning Rust!
Practice Topics
- Writing
enum and struct declarations
- Implementing methods on a
struct
- Using
derive macros
- Error handling with
Result
- Using
Option
- Using
Box smart pointers
- Visibility (public and private)
Something to try
Google cloud shell: https://shell.cloud.google.com
- Convenient Linux dev environment, preview of things to comeā¦
- Can set up Rust with
rustup default stable
- I suggest turning off the AI assistant for now
Getting the material
Repo: https://github.coecis.cornell.edu/cs4414-f26/lab-02
- Instructions are in
README.md
- Your code should go in
lib.rs
- Check progress with
cargo test (see Milestones header)
Hand in question sheet at the end of session
- Who were you working with?
- How far did you get by the end?
- What questions came up?