프로세스 간 컨텍스트 스위칭은 실행 중인 프로세스의 상태
(메모리 정보, CPU 레지스터 값, 프로그램 카운터 등)를 PCB(Process Control Block)에 저장합니다
다음 실행할 프로세스의 PCB에서 상태를 복원하고, CPU를 할당하여 실행을 재개합니다
스레드 간 컨텍스트 스위칭은 실행 중인 스레드의 상태(레지스터 값, 프로그램 카운터, 스택 정보)를
TCB(Thread Control Block)에 저장합니다
다음 실행할 스레드의 TCB에서 상태를 복원하여 CPU에서 실행합니다
특징 | 프로세스 컨텍스트 스위칭 | 스레드 컨텍스트 스위칭 |
---|---|---|
전환 속도 | 상대적으로 느림 (주소 공간 전환 필요) | 상대적으로 빠름 (같은 프로세스 내에서 주소 공간 공유) |
저장/복원 정보 | PCB (레지스터, 주소 공간, 파일 정보 등) | TCB (레지스터, 스택 정보 등) |
오버헤드 | 스레드 컨텍스트 스위칭보다 큼 | 프로세스 컨텍스트 스위칭보다 작음 |
컨텍스트 전환이 빈번히 발생하면 저장 및 복원 과정의 오버헤드로 인해
CPU 자원이 낭비되어 성능이 저하될 수 있습니다
따라서 프로세스 간 전환이 빈번하면 오버헤드가 더 큽니다
반대로 스레드 간 전환이 빈번하면 상대적으로 작지만 여전히 오버헤드가 존재합니다
결과적으로, 컨텍스트 전환을 최소화하여 CPU 자원을 효율적으로 사용하는 것이 중요합니다