The overview:
* The theory of concurrency (basics, terminology, common problems etc )
* The history of concurrency (transition to multi-process, multi-core, multi-instance)
* The concurrency in hardware (multi-core, registers, network bottlenecks etc.)
* The concurrency in OS ( mostly Unix, context switching, priority scheduling etc.)
* The concurrency in an app (Java & Golang, thread, channels, common patterns)
* The concurrency on a cluster ( Load balancing, session replication, caches, IMDGs, global lock, barrier synchronization etc)
Could you give me some recommendations about the topics. Books, presentations, videos, courses... Anything. I have a few months including 20+ free days so I can spend really huge effort for this :)