728x90
#define FALSE 0
#define TRUE 1
#define N 2
int turn;
int interested[N];
void enter_region(int process){ // Peterson's Algorithm에서 사용하는 임계구역 진입함수
int other; //other thread number
other = 1 - process;
interested[process] = TRUE; // 진입 프로세스의 interested true 세팅
turn = process;
//진입 프로세스 차례고, interested 가 true일 경우에 바쁜 대기
while(turn == process && interested[other] == TRUE);
}
void leave_region(int process){ // Peterson's Algorithm에서 사용하는 임계구역 탈출함수
interested[process] = FALSE; // interested를 false로 세팅하고 leave
}
728x90
'OS' 카테고리의 다른 글
error: no such partition (0) | 2013.07.07 |
---|---|
유닉스 파일시스템의 구조 (0) | 2013.06.10 |
FAT 파일시스템 구조 (0) | 2013.06.10 |
UNIX FILE SYSTEM - INODE (0) | 2013.06.09 |
windows 동기화 (0) | 2013.04.07 |