tonyhan18 / Philosophers_2022

docs for philosopher

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Philosophers_2022

42 seoul philosophers

image

How to RUN

make all

./philo 400 200 200

make fclean

How to release Dead lock

  1. wait and go
    모든 철학자가 같은 시간에 식사를 처음 시작하지 않습니다.
    짝수번 철학자는 일정 시간이후 첫 식사를 시작합니다.
    image

  1. left-right, right-left(LIFO)
    많은 코드에서 세마포어를 닫는 순서를 오른쪽-왼쪽, 오른쪽-왼쪽 순서로 가는 것으로 압니다.
    이건 OS에서도 FIFO 방식인데... 간혹 이 방식으로 하면 DEAD LOCK이 보다 오래 지속될 가능성이 높습니다.
    왜냐하면 식사중인 철학자 옆에 있는 철학자는 오른쪽 포크를 기다리는데 식사중인 철학자가 왼쪽을 빨리 놓을 수록
    식사 중인 철학자의 옆에 있는 철학자가 오른쪽 포크를 잡을 속도 간격이 보다 좁아집니다.
    image

About

docs for philosopher


Languages

Language:C 92.2%Language:Makefile 7.8%