What are your solution strategies for "Dining Philosophers
Problem" ?
Answer Posted / neena lekshmi p s
the dining philosophers problem is an illustrative example
of a common computing problem in concurrency. It is a
classic multi-process synchronization problem.
The dining philosophers problem is
summarized as five philosophers sitting at a table doing one
of two things: eating or thinking. While eating, they are
not thinking, and while thinking, they are not eating. The
five philosophers sit at a circular table with a large bowl
of spaghetti in the center. A fork is placed in between each
pair of adjacent philosophers, and as such, each philosopher
has one fork to his left and one fork to his right. As
spaghetti is difficult to serve and eat with a single fork,
it is assumed that a philosopher must eat with two forks.
Each philosopher can only use the forks on his immediate
left and immediate right.
The dining philosophers problem is
sometimes explained using rice and chopsticks rather than
spaghetti and forks, as it is more intuitively obvious that
two chopsticks are required to begin eating.
The philosophers never speak to each other, which creates a
dangerous possibility of deadlock when every philosopher
holds a left fork and waits perpetually for a right fork (or
vice versa).
Originally used as a means of illustrating the problem of
deadlock, this system reaches deadlock when there is a
'cycle of unwarranted requests'. In this case philosopher P1
waits for the fork grabbed by philosopher P2 who is waiting
for the fork of philosopher P3 and so forth, making a
circular chain.
| Is This Answer Correct ? | 2 Yes | 9 No |
Post New Answer View All Answers
Can you please explain the difference between trap and trapdoor?
What is the purpose of system calls?
what is the relationship between page size and page table?
Where the user store resides in OS?
Explain various types of scheduling in operating system.
How long should a chkdsk take?
What are the 3 categories of operating systems?
What is gang scheduling in operating system (os)?
Explain the command rate in reference to ram?
What are the steps involved in following a particular instruction given by the cpu?
What is the x86 folder?
How long does chkdsk f'r take?
Can x86 run 64 bit?
Do I need program files and program files x86?
What does echo $$ do?