|
use_time = rand()%3; //세마포어가 기다리는 시간설정
switch(op_char)//임계영역내에서의 작업
{
case 'O' : printf("O"); break;
case 'X' : printf("X"); break;
case 'Z' : printf("Z"); break;
}
sleep(pause_time); //세마포어가 기다리게 한다.
printf("%c", op_char); fflush(stdout); //두번째
|
- 페이지 9페이지
- 가격 2,000원
- 등록일 2015.07.21
- 파일종류 한글(hwp)
- 참고문헌 있음
- 최근 2주 판매 이력 없음
|
|
t sembuf p_buf; // 세마포어의 변수부분(미리 만들어져있음)
if(flag==1) { // 누가 접근했는지를 'flag'를 통해서 알수있다.
printf("Product.. Wait for Critical Section Entering\n");
}
else {
printf("Customer.. Wait for Critical Section Entering\n");
}
p_buf.sem_num = 0; // 값을 초기화
|
- 페이지 5페이지
- 가격 2,300원
- 등록일 2013.07.30
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
s sleep(2);
printf("process v(semid);
printf("process exit(0);
}
void main() {
if(fork() == 0) handlesem(SEMKEY);
if(fork() == 0) handlesem(SEMKEY);
if(fork() == 0) handlesem(SEMKEY);
}
위의 소스에서 initsem 은 세마포어를 초기화 하고, p 와 v 함수는 세마포어 연산을 수행한다. 이
|
- 페이지 11페이지
- 가격 2,000원
- 등록일 2004.08.11
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
세마포어, 공유메모리, 메시지 큐가 있지만, 서로 접근하는
방법은 비슷하다.
ㄱ. IPC 설비 생성과 식별자 얻기
semget, shmget, msgget 함수가 세마포어, 공유메모리, 메시지 큐에서 각각 해당 설비를 생성하고 식별자를 얻는 함수이다. 이들 함수에
|
- 페이지 10페이지
- 가격 5,000원
- 등록일 2013.07.30
- 파일종류 한글(hwp)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|
|
세마포어로 사용될 경우) */ (3)
/* 이벤트 타입 */ (4)
/* 대기 리스트 그룹 */ (5)
이벤트 컨트롤 블록(EBC) Con’t
자유 이벤트 컨트롤 블록(Free ECB) 리스트
이벤트 컨트롤 블록(EBC) Con’t
이벤트
|
- 페이지 17페이지
- 가격 1,000원
- 등록일 2003.12.27
- 파일종류 피피티(ppt)
- 참고문헌 없음
- 최근 2주 판매 이력 없음
|