운영체제정보처리기사(구) · 2016년05월08일 · 47/100
47.다중 프로그래밍 시스템에서 OS에 의해 CPU가 할당되는 프로세스를 변경하기 위한 목적으로 현재 CPU를 사용하여 실행되고 있는 프로세스의 상태 정보를 저장하고 제어 권한을 ISR에게 넘기는 작업을 무엇이라 하는가?
1
Context Switching정답
2
Monitor
3
Mutual Exclusion
4
Semaphore
해설
1.문맥교환(Context Switching) - 다중 프로그래밍에서 os에 의해 할당되는 프로세스를 변경하기 위하여 중앙처리장치를 사용하여 실행되고있는 상태를 저장후 앞으로 실행될 프로세스의 상태정보를 설정후 중앙처리장치를 할당하여 실행 *overhead 가장 큰요인 2.Monitor(모니터) 임계 구역과 비슷하다. - 데이터와 이 데이터를 처리하는 프로시저로 구성 자료 추상화,정보 은폐를 기초,공유 자원을 할당하기위한 병행성 구조 모니터를 사용하려면 모니터의 진입부 호출해야함 외부 프로세스 직접 액세스 불가능, 모니터의 경계에서 상호배제 한 순간에 하나의 프로세스만 진입하여 자원을 사용가능(임계구역과 비슷) 모니터는 Wait과 Signal을 사용 3.Semaphore(세마포어) - 신호기, 깃발 각 프로세스에 제어신호를 전달하여 수행 P와 V의 연산에 의해 동기화 유지 상호배제 원리를 보장 P 연산은 Wait 동작 (S = S-1) V 연산은 Signal 동작 (S = S+1) 0 은 사용중 1은 사용가능 혹은 0과 양의 값을 가질수 있다. P 와 V연산으로만 접근 가능 4.Mutual Exclusion(상호 배제) - 사용하고 있을때 다른 프로세스가 사용하지 못하도록 베제시키는 제어기법 데커 알고리즘 - 교착 상태가 발생하지 않음을 보장 - 굥유 데이터에 대한 처리에 있어서 상호 배제를 보장 - 별도의 명령어 없이 소프트웨어로 해결 가능