Computer Science: An Overview: Global Edition (12th Edition)

Published by Pearson Higher Education
ISBN 10: 1292061162
ISBN 13: 978-1-29206-116-0

Chapter 3 - Operating Systems - Chapter Review Problems - Page 165: 42

Answer

See the explanation

Work Step by Step

In the dining philosophers' problem, deadlock and starvation are potential issues that arise due to the shared resource (forks) and the order in which philosophers access them. 1. **Deadlock**: Deadlock occurs when each philosopher holds one fork and waits indefinitely for the adjacent fork to become available, resulting in a situation where no philosopher can make progress. This happens if each philosopher picks up one fork and waits for the other, creating a circular dependency. For example: - Philosopher 1 picks up fork A, then waits for fork B. - Philosopher 2 picks up fork B, then waits for fork C. - Philosopher 3 picks up fork C, then waits for fork D. - Philosopher 4 picks up fork D, then waits for fork E. - Philosopher 5 picks up fork E, then waits for fork A. - Now, no philosopher can acquire both forks and thus they are all deadlocked. 2. **Starvation**: Starvation occurs when a philosopher is indefinitely prevented from acquiring both forks due to other philosophers continuously taking one or both of the forks before the starving philosopher can obtain them. This could happen if a certain order of philosopher actions consistently leaves one or more philosophers without access to the forks, leading to them being unable to eat. For example: - If a philosopher always picks up the fork to their left first, and another philosopher always picks up the fork to their right first, the philosopher between them might starve if the other two philosophers consistently hold onto their preferred forks. To mitigate these issues, various solutions have been proposed, such as resource hierarchy, arbitration, or ensuring that philosophers never hold onto a fork if they cannot acquire the second one.
Update this answer!

You can help us out by revising, improving and updating this answer.

Update this answer

After you claim an answer you’ll have 24 hours to send in a draft. An editor will review the submission and either publish your submission or provide feedback.