• 파일시티 이벤트
  • LF몰 이벤트
  • 서울좀비 이벤트
  • 탑툰 이벤트
  • 닥터피엘 이벤트
  • 아이템베이 이벤트
  • 아이템매니아 이벤트

pthread를 이용한 세마포어 구현

*지*
최초 등록일
2011.11.02
최종 저작일
2010.09
파일확장자 압축파일
가격 2,500원 할인쿠폰받기
다운로드
장바구니

소개글

pthread를 이용한 세마포어 구현 과제입니다.

컴파일 실행환경

GCC

본문내용

프로그래밍, 특히 유닉스시스템의 프로그래밍에서 세마포어는 운영체계의 자원을 경쟁적으로 사용하는 다중 프로세스에서, 행동을 조정하거나 또는 동기화 시키는 기술이다. 세마포어는 운영체계 또는 커널의 한 지정된 저장장치 내 값으로서, 각 프로세스는 이를 확인하고 변경할 수 있다. 확인되는 세마포어의 값에 따라, 그 프로세스가 즉시 자원을 사용할 수 있거나, 또는 이미 다른 프로세스에 의해 사용 중이라는 사실을 알게되면 재시도하기 전에 일정 시간을 기다려야만 한다. 세마포어는 이진수 (0 또는 1)를 사용하거나, 또는 추가적인 값을 가질 수도 있다. 세마포어를 사용하는 프로세스는 으레 그 값을 확인하고, 자원을 사용하는 동안에는 그 값을 변경함으로써 다른 세마포어 사용자들이 기다리도록 해야한다.

,....

Struct semaphore{
Int count;
Queue type queue;
}

void semWait(semaphore s)
{
s.count--;
if(s.count
do {
wait(full); //버퍼에 아이템이 생길 때까지 기다린다.
wait(mutex);
...
버퍼로부터 아이템을 가져온다.
...
signal(mutex);
signal(empty); //버퍼에 빈 공간이 생겼다고 알려준다.
...
아이템을 소비한다.
...
} while (1);




.....
.....


semWait구현
void semWait(semaphore* S,int pID) { //더이상생산물이없으므로프로세스를블락리스트에넣는다.
S->value--;
if(S->value listHead != NULL) { //큐에넣는다.
process* processPointer = S->listHead;
while(1){
if(processPointer->next!=NULL) processPointer = processPointer->next;
else break;
}



....
...


3.3 semSingnal구현
void semSignal(semaphore *S) { //프로세스를갖기위해
S->value++; //프로세스를 실행하므로 value값을 증가 시켜준다.
if(S->valuelistHead; //작업 수행
if(popProcess != NULL) {
S->listHead = S->listHead->next; //현재프로세스의다음프로세스를가르킨다.(현재꺼는실행)
flagConsumer[popProcess->pID] = 1;
....
...

압축파일 내 파일목록

실행/.goutputstream-HQHJJV
실행/.goutputstream-N4CNJV
실행/.goutputstream-TRIMJV
실행/.goutputstream-XMTMJV
실행/.vimrc
실행/a.exe.stackdump
실행/main.c
실행/makefile
실행/myshell.exe.stackdump
실행/REAEME.txt

참고 자료

없음
*지*
판매자 유형Bronze개인

주의사항

저작권 자료의 정보 및 내용의 진실성에 대하여 해피캠퍼스는 보증하지 않으며, 해당 정보 및 게시물 저작권과 기타 법적 책임은 자료 등록자에게 있습니다.
자료 및 게시물 내용의 불법적 이용, 무단 전재∙배포는 금지되어 있습니다.
저작권침해, 명예훼손 등 분쟁 요소 발견 시 고객센터의 저작권침해 신고센터를 이용해 주시기 바랍니다.
환불정책

해피캠퍼스는 구매자와 판매자 모두가 만족하는 서비스가 되도록 노력하고 있으며, 아래의 4가지 자료환불 조건을 꼭 확인해주시기 바랍니다.

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
탑툰 이벤트
pthread를 이용한 세마포어 구현
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업