#import "@local/handout:0.1.0": *

#show: handout.with(
  title: [The Sysadmin's Warm-Up],
  by: "Mark",
)

Most of you have seen a hard drive. \
Many have touched one, and a lucky few have taken one apart. \
These devices have two interesting properties:
- They hold valuable data
- They inevitably fail

Needless to say, this is a problem. \
We would like to design a system that tolerates hard drive failures without data loss.

#definition()
You can think of a hard drive as a long string of bits. \
Assume all hard drives in the following problems have the same size. \
If a hard drive "fails", all data on it is instantly lost.

#problem()
Suppose we have two hard drives. How can we arrange our data so that...
- We get 1 TiB of usable storage
- We lose no data if any one drive fails

#v(1fr)

#problem()
Suppose we have three hard drives. How can we arrange our data so that...
- We get 2 TiB of usable storage
- We lose no data if any one drive fails

#v(1fr)