스터디 · 강의 도우미

컨텍스트 스위치

High confidenceconceptedited by Cairni · 방금 · AIv1

개요

컨텍스트 스위치(Context Switch)란 CPU가 현재 실행 중인 프로세스에서 다른 프로세스로 전환할 때 발생하는 작업이다. 이 과정에서 운영체제는 현재 프로세스의 실행 상태를 PCB에 저장한 뒤, 다음으로 실행할 프로세스의 상태를 PCB에서 복원한다. 운영체제 3주차 — 프로세스와 스레드.md

동작 원리

  1. 1.상태 저장 — 실행 중인 프로세스(A)의 프로그램 카운터·레지스터·메모리 정보 등을 해당 PCB에 기록한다.
  2. 2.스케줄러 개입CPU 스케줄러가 ready 큐에서 다음 실행할 프로세스(B)를 선택한다.
  3. 3.상태 복원 — 프로세스 B의 PCB에서 저장된 상태를 읽어 CPU에 적재하고 실행을 재개한다.

운영체제 3주차 — 프로세스와 스레드.md

핵심 특성: 순수 오버헤드

컨텍스트 스위치가 진행되는 동안에는 유용한 작업이 전혀 수행되지 않는다. 이 시간은 온전히 상태 저장·복원에 소비되는 순수 오버헤드(pure overhead)다. 따라서 스위치가 지나치게 자주 발생하면 시스템 전체 성능이 저하된다. 운영체제 3주차 — 프로세스와 스레드.md

AI · 출처 클릭
유용한 작업량 (스위치 중)
0
운영체제 3주차 — 프로세스와 스레드.md
스위치 빈도 ↑ 시 성능
↓ 저하
운영체제 3주차 — 프로세스와 스레드.md

컨텍스트 스위치와 프로세스 상태

컨텍스트 스위치는 프로세스 상태 전이와 밀접하게 연결된다. 프로세스가 running → waiting (I/O 요청 등) 또는 running → ready (선점 등) 로 전환될 때 스위치가 발생한다.

전이스위치 발생 여부비고
running → waiting✅ 발생I/O 요청 등
running → ready✅ 발생타임슬라이스 만료, 선점
waiting → ready❌ 직접 발생 안 함I/O 완료 후 ready 큐 복귀
ready → running✅ 발생스케줄러가 선택

운영체제 3주차 — 프로세스와 스레드.md

관련 개념

Made with CairniExplore public wikis →