To complete this exercise you will have to use git. Create one or several commits that adds answers to the following questions and push it to your groups repository to complete the task.
When answering the questions, remember to use all the resources at your disposal. Asking the internet isn't a form of "cheating", it's a way of learning.
Concurrent, perceived to run at the same time. parallelism is actually at the same time, but needs multicore system.
Because we have reached a limit in computing power with regards to energy usage.
(Or phrased differently: What problems do concurrency help in solving?) Concurrency lets you do things at the same time.
(Come back to this after you have worked on part 4 of this exercise) It is more complicated, but you gain better functionality. Easier to run when they are separate.
Threads communicate through shared memory, whilst processes do not. Green threads are threads scheduled by a runtime library or VM. Coroutines are scheduled using cooperative multitasking.
green threads
Only one thread can operate on python objects and Python/C APi functions at one time. Works great for single core computers, but not multicore.
Eventlet is capable of concurrency.
GOMAXPROCS sets the maximum number of CPUs that can be executing simultaneously and returns the previous setting. If n < 1, it does not change the current setting. This call will go away when the scheduler improves.