I have heard that one processor can work on only one process at a time. Is this true? If so, then how can a single process be executed in more than one processors at a time? Is this even possible?
Thanks in advance!
I have heard that one processor can work on only one process at a time. Is this true? If so, then how can a single process be executed in more than one processors at a time? Is this even possible?
Thanks in advance!
Most operating systems will allow threads to run simultaneously on separate processors/cores. Since processes can have more than one thread, they can in theory run on more than one core. Synchronization may cause one or more threads to wait until others have reached a certain point, but barring that they will run at the same time.
One virtual core can work on only one thread of execution at a time. In essence, this is the definition of a virtual core. However, one process can be executed in any number of physical or virtual cores at the same time if it contains multiple threads of execution.