카테고리 없음
컨텍스트 스위칭
JUNGKEUNG
2024. 8. 3. 22:00
반응형
여러 프로세스나 스레드를 동시에 실행할 때, CPU가 현재 실행 중인 작업의 상태를 저장하고, 다른 작업으로 전환하는 과정을 말한다. 이 과정에서 CPU는 새로운 작업을 실행하기 전에 이전 작업의 상태를 저장하고, 새 작업의 상태를 불러와야 한다. 이것을 컨텍스트 스위칭(contet switching)이라 한다.
컨텍스트는 현재 작업하는 문잭을 뜻한다. 현재 작업하는 문맥이 변하기 때문에 컨텍스트 스위칭이다.
컨텍스트 스위칭 과정에서 이전에 실행 중인 값을 메모리에 잠깐 저장하고, 이후에 다시 실행하는 시점에 저장한 값을 CPU에 다시 불러와야 한다.
컨텍스트 스위칭이 필요한 이유
- 여러 프로세스와 스레드들을 동시에 실행시키기 위해
- 여러 프로세스와 스레드들이 공정하게 CPU 시간을 나눠 갖기 위해
- 높은 우선순위의 작업이 빠르게 처리될 수 있도록 하기 위해
Sciprt
CPU가 한 프로세스의 실행을 중단하고 다른 프로세스로 전환하는 과정이다. 이 과정에서 현제 실행 중인 프로세스의 상태를 저장하고, 이전에 중단된 다른 프로세스의 상태를 복원한다.
간단한 동작 방식으로는
- 실행 중인 프로세스가 입출력 작업을 요청하고, 결과를 기다리는 동안 CPU가 다른 작업을 수행할 수 있다.
- 실행 중인 프로세스가 할당된 시간을 모두 사용했을 때 종료 된다.
- 높은 우선순위의 프로세스가 실행을 요구할 때 이다.
참고자료