The Dining Philosophers
There are N philosophers and N forks, the philosophers represent processes and forks represent resources
The philosophers are competing for forks and in order to eat, a philosopher needs 2 forks, one on the left and one on the right.
We need to prevent deadlock situations in cases where all philosophers are holding a fork and waiting to acquire another fork in order to be able to eat.
One of the simple rules we can implement to prevent deadlocks is to stop philosophers from taking up a fork if the other fork has already been taken by another process.
For example, if Philosopher 3 is ready to eat, he/she must have forks 3 and 4, but if fork 4 has already been taken by Philosopher 4 then Philosopher 3 cannot take up fork 3 and must wait for fork 4 to be available before it can take up both forks and eat.
Create a program to show the synchronization in this situation.
1. There are N philosophers and N forks Philosophers have 4 states, Thinking (Waiting), Hungry (Ready) Eating (Executing), and Exit (Terminate).
2. A philosopher can be in different states and the diagram below shows the changes in states from start to end.
SHN6023 : Mental Health, Resilience and Recovery Across the Life-course – Case Study Assignment
Read MoreBUS6009 : International Business Management – Written Case Report
Read MoreBUS6018 : PROJECT MANAGEMENT – PROJECT PLAN
Read MoreHCM4003 : Communication and Interprofessional Collaboration – Podcast
Read MoreQHO335 : Business Project – Critical evaluation of an organisation’s response during the cost-of-living crisis in the UK
Read MorePRM7006 : Management of Traditional Projects – PID Assignment
Read MoreBMA5108-20H : International Business – Strategic Evaluation
Read MoreCA5055 : Airline Revenue and Pricing Management – REPORT
Read MoreCA5056 Aviation Psychology and Human Factors Assignment brief
Read MoreHow can i assist with youGBEN5006 : Intrapreneurial Development – Portfolio
Read More