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

[운영체제] 운영체제 공룡책 연습문제 풀이 7장

*유*
개인인증판매자스토어
최초 등록일
2005.06.22
최종 저작일
2005.06
8페이지/한글파일 한컴오피스
가격 1,000원 할인쿠폰받기
다운로드
장바구니

목차

7.1 What is the meaning of the term busy waiting? What other kinds of waiting are there in an operating system? Can busy waiting be avoided altogether? Explain your answer.

7.2 Explain why spinlocks are not appropriate for uniprocessor systems yet may be suitable for multiprocessor systems.


7.3 Prove that, in the bakery algorithm (Setion 7.2.2), the following property holds :
If Pi is in its critical section and Pk (k≠i) has already chosen its number[k≠i] has already chosen its number[k]≠0, then (number[i], I) < (number[k], k).

7.4 The first known correct software solution to the critical-section problem for two processes
was developed by Dekker. The two processes, P0 and P1, share the following variables:

7.5 The first known correct software solution to the critical-section problem for n processes with
a lower bound on waiting of n-1 turns was presented by Eisenberg and McGuire.
The processes share the following variables :
.......

본문내용

7.1 What is the meaning of the term busy waiting? What other kinds of waiting are there in an operating system? Can busy waiting be avoided altogether? Explain your answer.

busy waiting이란 하나의 프로세스가 C.S에 들어가면 Critical Section에 들어가려고 하는 다른 프로세스가 Entry Section의 코드를 루프를 계속 돌며 대기하는 프로세스가 많을 때를 지칭한다. 한 프로세스가 임계 구역에 있으면, 이 임계 구역에 진입하려는 다른 프로세스들은 진입부에서 계속 반복해야 한다. 바쁘게 대기하는 것은 다른 프로세스들이 생산적으로 사용할 수 있는 CPU 시간을 낭비하게 하여 하나의 CPU가 여러 프로세스에 공유되는 다중 프로그래밍 시스템에는 치명적이다. 그러나, 프로세스가 lock을 기다릴 때 문맥 교환(context switch)이 불필요하여 lock이 매우 짧은 시간만 적용될 때는 매우 유용하다. 다중 프로세스 시스템에서 busy waiting를 극복하기 위하여 wait와 signal 연산을 수정한다.
-진입에 실패하고 대기할 필요가 있는 프로세스를 대기 큐로 보냄
-대기 큐에서 기다리는 프로세스들은 신호를 받아 실행 가능한 상태로 변화
즉 busy waiting을 해결하는 방법은 현재 하나의 Process가 C.S.에서 작업을 할 때 들어오는 다른 Process를 Block해서 waiting 상태로 만들고, 현재 C.S.에서 작업하던 Process가 끝나서 Exit Section을 나오면 하나의 Process를 wakeup 해준다.

7.2 Explain why spinlocks are not appropriate for uniprocessor systems yet may be suitable for multiprocessor systems.

uniprocessor : wait와 signal 수행시 인터럽트를 금지시키면 다른 프로세스가 끼어들지 않으므로 끝까지 수행가능
multiprrocessor : 인터럽트 효과가 없으므로 소프트웨어적으로 해결가능 turn+flag algo
즉 단일 프로세서에서는 바쁜 대기 상태는 다른 프로세스들이 생산적으로 사용할 수 있는 중앙처리장치 시간을 낭비하게 된다. 그러나 다중 프로세서 환경에서의 Spinlock은 유용하게 사용된다. Spinlock의 장점은 프로세스가 록에서 대기할 때 문맥교환이 불필요하다는 점이다. 그러므로, 록이 매우 짧은 시간만 적용될 때는 Spinlock이 매우 유용하다.

참고 자료

없음

자료후기(1)

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

주의사항

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

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

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

이런 노하우도 있어요!더보기

최근 본 자료더보기
탑툰 이벤트
[운영체제] 운영체제 공룡책 연습문제 풀이 7장
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업
  • 레이어 팝업