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


Please Help Members By Posting Answers For Below Questions

Which is better 32 bit or 64 bit?

549


Explain booting the system and bootstrap program in operating system.

514


What is chkdsk used for?

543


How to setup never expired user password?

598


What factors determine whether a detection-algorithm must be utilized in a deadlock avoidance system?

1471






What is plumbing/piping?

587


How do I search for a file?

547


Tell me about different OS related issues for a given set of C-programs (mainly address issues address space, paging etc.)

625


What are the 4 stages of computing?

535


Have you used threaded trees anytime in your life time?

716


How do I fix error 429?

547


What is waiting time?

593


What is micro kernel approach and site its advantages?

578


How do I find system information?

552


Explain briefly about loader and its functioning?

529