2016년 9월 27일 화요일

4주차os

바쁜대기의 계념과 이를 피할수 있는 방법을 간단히 설명하시오
:한 프로세스가 임계구역내에 들어왔을때 문맥교환을 통해 다른 프로세스로 수행이 넘어간경우, 현재 임계구역내에 이미 프로세스가 들어가 있음에도 불구하고 정해진 타임동안 루프를 돌며 임계구역으로 집입을 시도하는 경우이다. 이는 세마포로는 프로세스 순서가 될때까지 루프를 대기시키거나 잠재워 cpu낭비를 최소화 하는 법이 있으며 모니터로 동기화를 시켜 중지되었다가 조건에 맞으면 신호를줘 작업하게 하는 법이 있다.

대기의 종류를 세가지 이상 나열하고 간단히 설명하시오
:한정된 대기는 임계규역에 접속 요청시 중간에 순서를 빼앗기는 횟수를 제한시카는 것이며
바쁜대기는 한 프로세스가 임계영역에 있으면 이 임계에 들어가려는 프로세스는 진입코드에서 계속 반복 순환하는 것을 말한다. 그리고 무한대기는 상대방 프로세스의 상태를 모르고 실행을 멈추고 계속하여 기다리는 상태를 말한다.

다음 선행그래프를 fork/join문장으로 구현하시오
:


Fork L1;
a:=x+y;
goto L2;
b:=z+1;
L1 : join count;
L2: c:=a-b;
w:=c+1;

버퍼크기가 유한한 생산자.소비자 문제에서 버퍼가 최대 n-1개의 데이터만 허용하는 이유를 설명하시오
:생산자는 버퍼가 가득 찼을 경우 더이상 생성 못하고 아무런 작동을 하지 않으며 소비자와 동기화를 해야 하기 때문이다.

임계영역 문제에서 세마포가 아닌 testandset을 사용하여 해결할때의 단점은?
:항상 적용할 수 없고 실행 효율이 떨어지며 소프트워어적인 해결책은 더 복잡하고 프로세스가 2개 이상일 떄는 더 많이 대기할 수 있다.

임계영역의 의미와 문제점을 간단히 설명하시오
:두 프로세스가 동시에 사용할 수 없는 자원에 접근하고 실행하는 프로그램 코드 부분이라 한다. 문제점은 반드시 한번에 하나의 프로세스만 접근이 가능하며 특정 프로세스가 임계영역에 오래 머물거나 무한 루프등에 빠지지 않도록 관리해야한다.

임계영역이 만족해야하는 세가지 조건을 기술하시오
:첫번째로 상호배제로서 프로세스가 입계영역에서 수행중일 때 프로세스가 임계영역에서 작업하지 않아야 하며  두번쨰로 진행은 프로세스가 임계영역으로 들어가려할때 알고리즘에 따라 다음 임계영역에서 수행할 대상을 선정해야한다. 제한된 대기로 한 프로세스가 임계영역을 요청한 후에 수락되기까지 다른 프로세스가 임계영역에 진입할 수 있는 횟수를 제한해야한다.

프로세스들의 병행처리를 명시하는 언어적표현을 간략하게 기술하시오
:첫번째로 fork와 join구조가 있는데 이는 선행제약을 정의하는 선행관계를 명시하는 구조이다. 그 다음으로 parbegin과 parend구조가 있는데 하나의 프로세스에서 여러 병렬 프로세스로 퍼졌다가 다시 하나로 뭉치는 것을 나타내는 병행문장을 명시한다.

세마포의 두 가지 연산을 설명하시오
:p연산과 v연산이 있는데 p연산은 프로세스를 대기하게 하는 wait동작으로 임계영역에 진입하는 연산이고 v연산은 대기중인 프로세스를 깨우려고 신호를 보내는 signal동작으로 임계영역에서 나오는 연산이다.

세마포의 단점을 설명하시오
:세마포는 wait이나 signal연산을 생략하면 상호배제 문제가 발생하며 wait연산 때문에 대기하는 프로세스들이 교착상태에 빠질수 있다. 따라서 잘못 사용하면 여러가지 오류가 쉽게 발생하여 프로그램을 작성하기 어렵다.

모니터의 개념을 설명하시오
: 사용자들 사이에서 통신하려고 동기화하고, 자원에 배타적으로 접근할수 있도록 프로세스가 사용하는 병행프로그래밍 구조이다.

경쟁상태를 설명하고, 이를 피할수 있는 방법을 간단히 설명하시오
:여러프로세스가 동시에 공유데이터에 접근할 때 접근순서에 다라 실행 결화가 달라지는 상황을 말하며  공유변수를 한 순간에 프로세스 하나만 조작 할 수 있도록 해야하는 임계영역과 연산하는 부분을 임계영역으로 설정하여 상호배재하는 방법으로 해결 가능하다.

세마포와 조건 변수의 wait와 signal연산 차이를 설명하시오
:wait은 연산프로세스를 대기하게 하는 동작이고 signal은 대기중인 프로세스를  깨우려고 신호를 보내는 동작이다.

댓글 없음:

댓글 쓰기