diff --git a/Misc/Warm-Ups/raid.tex b/Misc/Warm-Ups/raid.tex new file mode 100755 index 0000000..7e03189 --- /dev/null +++ b/Misc/Warm-Ups/raid.tex @@ -0,0 +1,99 @@ +% https://git.betalupi.com/Mark/latex-packages +% use [nosolutions] flag to hide solutions. +% use [solutions] flag to show solutions. +% Last built with version 1.1.0 +\documentclass[ + nosolutions, + singlenumbering, + nopagenumber +]{ormc_handout} + +\usepackage{tikz} + +\begin{document} + + \maketitle + {The Sysadmin's Warm-Up} + {Prepared by Mark on \today} + + + Most of you have seen a hard drive. Many have touched one, and a lucky few have poked around inside one. These devices have two interesting properties: + + \begin{enumerate} + \item They hold valuable data + \item They eventually fail + \end{enumerate} + + Needless to say, this is a problem. \\ + We need to design a system that allows hard drives to fail without data loss. + + \definition{} + You can think of a hard drive as a long string of bits. \\ + Assume all hard drives can store 1 TiB of data. + + \begin{center} + \begin{tikzpicture} + + \node[above] at (1/2, 0) {Drive A}; + \draw (0cm, 0cm) -- (0cm, -3cm); + \draw (1cm, 0cm) -- (1cm, -3cm); + \foreach \i in {0,...,-6} { + \draw (0cm,\i cm / 2) -- (1cm ,\i cm / 2); + } + + \node at (1/2, - 1 / 4) {1}; + \node at (1/2, - 3 / 4) {1}; + \node at (1/2, - 5 / 4) {0}; + \node at (1/2, - 7 / 4) {...}; + \node at (1/2, - 9 / 4) {1}; + \node at (1/2, -11 / 4) {0}; + + + \node[above] at (5/2, 0) {Drive B}; + \draw (2cm, 0cm) -- (2cm, -3cm); + \draw (3cm, 0cm) -- (3cm, -3cm); + \foreach \i in {0,...,-6} { + \draw (2cm,\i cm / 2) -- (3cm ,\i cm / 2); + } + + \node at (5/2, - 1 / 4) {0}; + \node at (5/2, - 3 / 4) {1}; + \node at (5/2, - 5 / 4) {0}; + \node at (5/2, - 7 / 4) {...}; + \node at (5/2, - 9 / 4) {0}; + \node at (5/2, -11 / 4) {1}; + \end{tikzpicture} + \end{center} + + \problem{} + Suppose we have two hard drives. How can we arrange our data so that... + \begin{enumerate} + \item We can store 1 TiB of data + \item We lose no data when any one drive fails + \end{enumerate} + + \vfill + + \problem{} + Suppose we have three hard drives. How can we arrange our data so that... + \begin{enumerate} + \item We can store 2 TiB of data + \item We lose no data when any one drive fails + \end{enumerate} + + \vfill + + \problem{} + Suppose we have five hard drives. How can we arrange our data so that... + \begin{enumerate} + \item We can store 3 TiB of data + \item We lose no data when any two drives fail + \end{enumerate} + + \vfill + + \problem{} + Can you write a general solution to this problem? + + \vfill +\end{document} \ No newline at end of file