Imagine instead of waiting for I/O to finish, and then computing, and then I/O again...
...we waited for the first I/O to finish, and started computing that section at the same time the second sector was being read!
ALL these changes have a BIG problem: They require us to change our code to incorporate the ideas. It is too much of a pain to change our programs systematically; too much of a pain to run programs simultaneously. Also if one program fails, the other ones will follow. Instead we should use MODULARITY
brk(N)
moves the break to N, able to increase/decrease the forbidden zone. If you N=0, everything is FORBIDDEN. Bad stuff happens!
Function calls are SOFT MODULARITY! We want HARD MODULARITY, which will protect modules from each other