Search
6️⃣

[운영체제 예상문제] Ch.6 Process synchronizing

프로세스 동기화

프로세스의 동기화가 필요한 이유에 대해서 서술하시오
다음은 producer 를 위한 코드이다 아래 질문에 대해 답변하시오
count 변수에 대해서 서술하시오
BUFFER_SIZE
위 코드에 대해서 서술하시오
위 코드의 실행과정을 서술하시오
위 두 코드의 문제점에 대해서 서술하시오

6.2 Critical-Section

Critical-Section 이란?
Critical-Section Problem 에 대한 해결안은 3가지 요구 조건을 충족해야한다 이 3가지 요구조건을 쓰고 각각에 대해 서술하시오
단일 코어환경에서의 임계구역 문제에 대한 solution 은 무엇인가?
다중 코어 환경에서는 위의 solution 을 사용하지 못하는 이유에 대해서 서술하시오
비선점형 커널 환경에서도 race condition이 발생할 수 있는가? 답변에 대한 이유를 서술하시오

Peterson's Solution

피터슨의 해결안에 대해서 서술하시오
Software Solution 에 대한 코드이다 이에 대해 서술하시오
위 solution 은 어떤 Critical-Section problem 을 해결하지 못하였는가?
위 solution 은 어떤 Critical-Section problem 을 해결하지 못하였는가?
위 solution 은 어떻게 알고리즘 1,2 의 problem 을 해결하였는가?

Sychronization Hardware

싱글 코어 환경에서 Critical section problem 을 해결하는 방법에 대해서 서술하시오
위의 함수에 대해서 서술하시오
위 코드는 TestAndSet 함수를 이용해 하드웨어 솔루션을 구현한 코드블록이다. 동작 원리에 대해서 서술하시오
위 코드에 대해서 설명하시오
위 코드에 대해서 설명하시오

SemaPhore

SemaPhore 에 대해서 설명하시오
Counting Semaphore 란?
Binary Semaphore 란?
세마포어의 구현방법과 해결 해야하는 과제에 대해 서술하시오
No Busy waiting 세마포어를 구현하시오
세마포어 tool 을 사용하였을 때 발생하는 부가적인 문제 3가지에 대해서 서술하시오
Priority Inversion 에 대한 해결책에 대해서 서술하시오

Classical Problems of Synchronization

Bounded Buffer problem
Readers Writers Problem
Dining Philoshophers Problem