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

[운영체제] Mutex와 Semaphore를 이용한 producer/consumer 모델 구현

*수*
개인인증판매자스토어
최초 등록일
2008.06.26
최종 저작일
2006.05
파일확장자 압축파일
가격 2,000원 할인쿠폰받기
다운로드
장바구니

소개글

운영체제에서 producer/consumer 모델을 프로그래밍으로 구현한 것입니다.
하나는 Mutex로 구현하였고, 다른 하나는 Semaphore로 구현하였습니다.

소스코드는 물론 문서(소스 사용법, 동작원리 상세히 설명)까지 자세히 적혀 있습니다.

#1. Mutex를 이용한 Producer/Consumer 모델 구현

프로그램의 구조는 복수개의 producer 쓰레드와 consumer 쓰레드가 존재하며 하나의 버퍼를 공유하는 형태이다. Producer는 데이터를 생성하여 버퍼에 저장을 하고 Consumer는 버퍼에 저장된 데이터를 읽어 들여 출력한다. Producer 쓰레드와 Consumer 쓰레드간의 버퍼 사용권을 위한 동기화를 위해 mutex를 이용하여 프로그램을 작성한다.

#2. Semaphore를 이용한 Reader/Writer Problem Solution 구현(Readers Have priority)

Reader/Writer problem은 공유데이터에 접근하는 두가지 타입의 클라이언트를 가지고 있다. Reader는 공유데이터를 오로지 읽기만 하며 Writer는 공유데이터를 수정 및 업데이트만 한다. Reader/Writer problem의 조건은 다음과 같다.
- 동시에 여러 Reader가 공유 데이터를 읽을 수 있다.
- 한 번에 하나의 Writer만이 공유 데이터에 쓸 수 있다.
- 하나의 Writer가 공유 데이터에 쓰고 있다면 어떠한 Reader도 공유 데이터를 읽을 수 없다.

컴파일 실행환경

Linux 또는 Cygwin 또는 VM 같은 준리눅스 환경에서 gcc로 컴파일

압축파일 내 파일목록

문제정의.doc
function_structure.vsd
소스코드/Makefile
소스코드/mutex
소스코드/mutex.c
소스코드/sema
소스코드/sema.c
문서/Document.doc

참고 자료

*열혈강의 TCP/IP 소켓 프로그래밍, 윤성우, FREELEC
*Programming with POSIX Threads, David R. Butenhof, Addison Wesley
*Operating Systems 5 th Edition, William Stallings, Prentice Hall
* POSIX Threads Programming
http://www.llnl.gov/computing/tutorials/pthreads/#PthreadsAPI
*조인시 위키 - semaphore 함수 및 예제
http://www.joinc.co.kr/modules/moniwiki/wiki.php/article/%BC%BC%B8%B6%C6%F7%BE%EE%C0%C7%20%BB%E7%BF%EB
*KLDP man page
http://man.kldp.org/wiki/FrontPage
*조인시 위키 man page
http://www.joinc.co.kr/modules/moniwiki/wiki.php/man
*김동근의 텀즈 컴퓨터 용어사전
http://terms.co.kr/

프로그램소스 연관자료

*수*
판매자 유형Bronze개인인증

주의사항

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

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

파일오류 중복자료 저작권 없음 설명과 실제 내용 불일치
파일의 다운로드가 제대로 되지 않거나 파일형식에 맞는 프로그램으로 정상 작동하지 않는 경우 다른 자료와 70% 이상 내용이 일치하는 경우 (중복임을 확인할 수 있는 근거 필요함) 인터넷의 다른 사이트, 연구기관, 학교, 서적 등의 자료를 도용한 경우 자료의 설명과 실제 자료의 내용이 일치하지 않는 경우
최근 본 자료더보기
탑툰 이벤트
[운영체제] Mutex와 Semaphore를 이용한 producer/consumer 모델 구현
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
AI 챗봇
2024년 06월 10일 월요일
AI 챗봇
안녕하세요. 해피캠퍼스 AI 챗봇입니다. 무엇이 궁금하신가요?
11:38 오후
New

24시간 응대가능한
AI 챗봇이 런칭되었습니다. 닫기