Explain why spinlocks are sometimes tolerated in a multiproc
Explain why \'spinlocks\' are sometimes tolerated in a multiprocessor system, while typically not tolerated in a uniprocessor system.
Solution
Spinlocks are not being used in uniprocessor systems because of its nature that the condition which breaks the process out of the spinlock would require another process should be executed inorder to obtain the former one. So if the process not gave up the processor it holds, other process won\'t get a chance to set the program condition required for the first process to make progress. Whereas in a multiprocessor environment, other process can execute in a different processor and can change the program state inorder to release the first process from the spinlock. Thus the spinlocks are sometimes tolerated in a multiprocessor system and typically not tolerated in a uniprocessor system.
