본문 바로가기

Programming/Operating System

운영체제 · 문맥 교환 (컨텍스트 전환)

컨텍스트 전환 (Context Switch)


정의 : 하나의 프로세스가 CPU를 점유한 상태에서, 다른 프로세스가 CPU를 사용하게 만들기 위해, 현재 프로세스의 정보(Context)를 저장하고, 새로운 프로세스의 정보를 CPU에 적재하는 작업

✓ Context Switch를 직역하면 '문맥 교환'이지만, '컨텍스트 스위치' 또는 '컨텍스트 전환'으로 부르는 편이 명확하다.

 프로세스의 Context는 프로세스 제어 블록(PCB)에 저장되어 있다.

문제점 : Context Switching 중에는 CPU가 작업을 수행할 수 없기 때문에, 문맥 교환이 잦으면 오버헤드가 커진다.






Context Switch의 시점


✓ 멀티 태스킹

✓ 인터럽트 핸들링

✓ 유저 모드와 커널 모드 간 전환