Context Switching
: CPU/core 에서 실행중인 process/thread가 다른 것으로 교체되는 것
- 필요이유
- 언제 발생하나?
- 주어진 time slice를 다 썼음
- IO 작업을 기다려야함
- 다른 리소스를 기다려야함
- Context란?
- process/thread의상태 (CPU, memory)
- 누가 실행하나?
- OS 커널: 컴퓨터의 각종 리소스를 제어하는 역할
Thread Context Switching
- 정의
- 같은 process의 thread끼리의 스위칭
Process Context Swtiching
공통점
- 둘다 커널 모드에서 실행됨
- CPU의 레지스터 상태를 교체
- process/thread의 상태 정보를 저장해 놓는 것.
차이점
- Process Context Swtiching은 가상 메모리 주소 관련 처리를 추가로 해야함
Thread Context Switching가 빠른이유