Consider the operation of an OS dispatcher on a computer with multiple cores operating under symmetric multiprocessing.

Question:

Consider the operation of an OS dispatcher on a computer with multiple cores operating under symmetric multiprocessing. Assuming that there are more processes being executed than there are cores, the dispatcher is responsible for maximizing the work load by keeping every core as busy as possible. In addition to the usual dispatch criteria and algorithms, there are two options for selecting in which core a process is to execute. The first option is to allow a process to execute in any core that is available each time it is selected to run; with this option, a process might execute in several different cores during its run. The second option is to require that the process run in the same core each time it is selected.

a. What are the advantages of the first option?
b. What are the advantages of the second option? Consider the interaction between a process and the cache memory that is assigned to each core.

Fantastic news! We've Found the answer you've been seeking!

Step by Step Answer: