[운영체제 ] Dining Philosopher Problem

등록일 2003.04.14 기타파일 (c) | 3페이지 | 가격 3,000원

목차

Dining Philosopher Problem를 세마포를 이용하여 해결한 프로그램 소스 코드입니다.

본문내용

#include < stdio.h >
#include < stdlib.h > /* for calloc() and exit() */

#define N 5 /* number of philosophers */
#define Busy_Eating 1
#define Busy_Thinking 1
#define Left(p) (p) /* chopstick macros */
#define Right(p) (((p) + 1) % N)

typedef int * semaphore;

semaphore chopstick[N]; /* global array */

int fork(void);
semaphore make_semaphore(void);
void philosopher(int me);
void pick_up(int me);
int pipe(int pd[2]);
void put_down(int me);
int read(int fd, void *buf, unsigned len);
void signal(semaphore s);
void sleep(unsigned seconds);
void wait(semaphore s);
int write(int fd, void *buf, unsigned len);
*원하는 자료를 검색 해 보세요.
  • 임베디드 시스템 설계 리포트 (Lab6- Multi-process, Dining Philosopher Problem) 15페이지
     아래 그림과 같이 5명의 철학자가 원탁에 앉아서 스파게티를 먹으려 한다 ... . 각 철학자의 사이에는 포크가 놓 여있다. (5명의 철학자, 5개의 ... 포크)     각 철학자는 1~5초간의 Random 시간 동안
  • 공룡책 7장 프로세스 동기화 발표자료 47페이지
    Dining Philosophers Problem 해결방법 동시에 4명의 철학자 ... 만이 동시에 테이블에 앉도록(젓가락을 들도록) 허용 철학자는 그의 양쪽 ... 철학자는 왼쪽 젓가락부터 들고, 짝수 철학자는 오른쪽 젓가락부터 들게 함
  • 식사하는 철학자문제 7페이지
    problem) ; 식사 중인 철학자들 문제 DPP(dining ... , 사로 결심할 수 있지만, 각 젓가락은 한번에 오직 한사람의 철학자 ... , 어떠한 수의 프로세스(철학자들)에 대해서도 최대의 병렬성을 허락한다
      최근 구매한 회원 학교정보 보기
      1. 최근 2주간 다운받은 회원수와 학교정보이며
         구매한 본인의 구매정보도 함께 표시됩니다.
      2. 매시 정각마다 업데이트 됩니다. (02:00 ~ 21:00)
      3. 구매자의 학교정보가 없는 경우 기타로 표시됩니다.
      4. 지식포인트 보유 시 지식포인트가 차감되며
         미보유 시 아이디당 1일 3회만 제공됩니다.
      상세하단 배너
      최근 본 자료더보기
      상세우측 배너
      상세우측 배너
      추천도서
      [운영체제 ] Dining Philosopher Problem