You are on page 1of 1

1. 다음을 설명하시오.

(a) 이차기회 알고리즘

(b) 프로그램과 프로세스

(c) 스케줄링에서 SJF와 SRTF의 공통점과 차이점

(d) 시스템 버추얼 머신과 프로세스 버추얼 머신

(e) 리눅스에서 실시간 프로세스와 일반프로세스를 통


합적으로 스케줄링 하는 방법

2. 프로세스 제어블록(PCB)과 관련하여


(a) 레디 큐와 PCB의 연관성

(b) 누가 실행했는지의 정보는 왜 필요한가?

(c) 논리적 주소 영역 정보는 왜 필요한가?

(d) 리눅스에서 프로세스들이 돌아가면서 실행하도록


하기 위해서 PCB에 어떤 정보를 어떻게 활용하나?

3. 다음을 설명하시오.
(a) 명령어 읽기 과정에서 x86 프로세서와 메모리간
의 신호 교환 절차

(b) 운영체제가 프로세스를 종료처리하게 되는 원인 3


가지

(c) 명령어 해석기(UNIX shell) 프로그램의 기본 구조

4. 디멘드 페이징에 대하여 다음을 설명하시오.


(a) 실행시점 주소바인딩을 수행하는 방법

(b) 프로그램 버그로 인해서 프로세스 밖 영역을 접근


하는 오류를 검출하는 방법

(c) 페이지 폴트 발생시 커널의 작업 내용

(d) 디멘드 페이징에서 페이지 교체 알고리즘이 필요


한 이유

5. 다음과 같은 picoKernel 용 멀티 스레드 프로그램


을 작성하시오.
- 3개의 스레드가 돌아가면서 다음을 실행
- 매번 자신의 ID를 출력하고 다음 스레드로 넘어감
- 각자 100번째 출력 후에는 종료
- threadCreate(), threadExit(), threadYield(),
threadSelf() 함수 중 필요한 것들을 적절히 활용

You might also like