I have a misunderstanding about how cores, process and threads works:
- Process has number of threads.
- All those threads share same memory section
- Core has it's own cache and memory address space.
So, when I'm running a process (which contains several threads) on Linux OS, and check the "top -H" command, I can see that the threads are distributed on multiple cores.
So How can it works ? (Threads of same process, which share same process address space, run on different cores ?) ?
What I miss here ?
Thanks