이 프로그램은 Intel Mac 을 기준으로 작성되었습니다. (M1 Mac 가능)
- 첫 번째 프로그램(man)
- 원탁 위에 둥글게 앉아 있는 철학자들 사이에 포크가 있는 상황을 가정.
- 포크라는 공유자원을 뮤텍스를 이용해 겹치지 않게 사용하면서 죽지 않게 돌아가며 식사를 하도록 구성
- 각각의 철학자는 쓰레드로 구성됨
- 두 번째 프로그램(bonus)
- 원탁 위에 둥글게 철학자들이 앉아 있지만 철학자 수만큼 포크가 원탁 가운데에 모여있도록 구성
- 각각의 철학자는 서로 다른 프로세스로 구성됨
- 프로세스 간 공유자원의 동시 접근을 방지할 수 있도록 세마포어를 사용함.