Skip to content

Simple solution of classic dining philosophers problem

License

Notifications You must be signed in to change notification settings

ivzhuravlev/dining_philosophers

Repository files navigation

dining_philosophers

Build status Build Status

Simple solution of classic dining philosophers problem.

Downloads

Latest 32bit version .zip archive

Latest 64bit version .zip archive

Latest 32bit version Windows Installer

Latest 64bit version Windows Installer

Problem description

This application is the simulation of dining philosophers problem. A solution of this problem (and many other insteresting ones) is described in details in a wonderful free book The Little Book of Semaphores. To avoid deadlocks the Footman Semaphore approach was applied. Number of philosophers is not limited.

Application structure

The program consists of two parts:

dphCore is a library that contains dinner simulation logic.

dphGui is a driver GUI application that runs the simulation and supports some customizations through the Settings dialog.

Application screenshots

Main window:

main window

Settings dialog:

settings dialog

Build requirements

  • CMake version >= 3.11
  • Qt version >= 5.9
  • Qt IFW version >= 3.0 (optional)