프로세스 vs 스레드: 컨텍스트 스위칭의 차이점과 성능 비교
·
Backend Development
운영체제에서 멀티태스킹을 구현하는 핵심 메커니즘인 컨텍스트 스위칭에 대해 알아보겠습니다. 특히 프로세스와 스레드의 컨텍스트 스위칭이 어떻게 다른지, 그리고 왜 스레드의 컨텍스트 스위칭이 더 빠른지 자세히 살펴보겠습니다.컨텍스트 스위칭이란?컨텍스트 스위칭은 CPU가 현재 실행 중인 작업을 다른 작업으로 전환하는 과정입니다. 이는 멀티태스킹 시스템에서 필수적인 메커니즘으로, 여러 작업이 동시에 실행되는 것처럼 보이게 합니다.컨텍스트의 구성 요소CPU 레지스터 상태프로그램 카운터 (PC)스택 포인터 (SP)범용 레지스터메모리 상태프로세스/스레드 상태 정보컨텍스트 스위칭이 발생하는 시점시간 할당량 소진각 프로세스/스레드에 할당된 CPU 시간이 소진될 때공정한 CPU 사용을 위해 필수적I/O 작업 대기프로세스/스..