If our computers could only complete a single task at a time, would it really cause that much of a slowdown?
Imagine it’s laundry day. Let’s assume it takes the following times to complete each laundry task:
- 30 minutes: Washing machine cycle
- 40 minutes: Dryer
- 10 minutes: Fold and put away
If we were to do each of these steps and waited for each step to be completed before starting the next, our total time would be 80 minutes (30 wash + 40 dry + 10 fold). If we started washing a single load of laundry at noon, we would be finished at 1:20 pm.
An hour and twenty minutes doesn’t seem too bad, but what if we had to complete multiple loads of laundry without overlapping any tasks? If we had four loads of laundry, it would take us 320 minutes (80 *4) to complete. If we started this task at noon, we wouldn’t be finished with your wash until 5:20 pm. There went our entire afternoon.
Take a look at the visual representation of the process we described of doing laundry. Each load of laundry is washed, dried, and folded before starting to wash the next load.