다음에서 문맥 교환(Context switch)이 반드시 발생하는 경우… | [법원직 9급 전산·사서 컴퓨터일반] 24년 1회차 기출문제 상세 페이지
1[법원직 9급 전산·사서 컴퓨터일반] 24년 1회차
다음에서 문맥 교환(Context switch)이 반드시 발생하는 경우는? 단, CPU 대기 큐(Ready queue)는 비어있지 않다고 가정한다.
1
프로세스가 요청한 I/O가 완료되어 인터럽트가 발생한 경우
2
라운드 로빈(Round Robin) 방식으로 CPU 스케줄링을 하는 시스템에서 프로세스의 CPU 할당시간(Time quantum)이 만료되었음을 알려주는 인터럽트가 발생한 경우
3
프로세스가 시스템콜(System call)을 하는 경우
4
다중 쓰레드(Thread)로 구성된 프로세스 내에서 쓰레드 중 하나가 I/O 요청을 하는 경우
해설
문맥 교환이 반드시 발생하는 경우는 라운드 로빈에서 할당시간이 만료된 때이다.
대기 큐에 프로세스가 있는 상태에서 시간 할당량이 끝나면 실행 중인 프로세스는 CPU를 내놓고 대기 큐의 다음 프로세스로 교체된다.
- I/O 완료 인터럽트: 인터럽트 처리 후 중단됐던 프로세스가 그대로 실행을 이어갈 수 있다.
- 시스템콜: 사용자 모드에서 커널 모드로 전환될 뿐, 처리가 끝나면 같은 프로세스가 계속 실행될 수 있다.
- 쓰레드의 I/O 요청: 논블로킹 방식이면 호출한 쓰레드가 실행을 이어갈 수 있어 교체가 필수는 아니다.
오류나 개정된 내용이 보이면 알려주세요