Whatever we have seen so far was pretty straightforward. We launched a script that executed some commands, instances, variables, and made something out of it, that is all--one command after the other, one instruction piled on the previous one. This is what we would call a serial execution, one command after the other just like domino tiles: the first coming in and the first being processed; and this brings to mind the concept of the FIFO queue, First In First Out.
What if we wanted to process more than one instruction at a time? Well, we cannot do this and it would not be incorrect: a CPU is a serial device and it can process only one instruction at a time. What we use to give us the taste of multitasking is having the CPU switching between an instruction and the other really fast. So, instead of completely processing an instruction before...