ZeroBase/CS

PCB와 컨텍스트 스위칭

Red_Horse 2025. 8. 13. 22:37

PCB (Process Control Block)

정의

  • 운영체제가 프로세스의 메타데이터를 저장하는 자료구조
  • 커널 스택에 위치
  • 프로세스 생성 시 생성, 종료 시 삭제

구성 요소

항목 설명
프로세스 상태 실행 중, 대기 중 등
프로세스 번호(PID) 고유 식별자
프로그램 카운터(PC) 다음 실행 명령의 주소
CPU 레지스터 정보 실행 상태 저장용
메모리 제한 정보 프로세스 메모리 관련 정보
열린 파일 목록 해당 프로세스가 연 파일 정보
 

컨텍스트 스위칭 (Context Switching)

정의

  • PCB를 이용해 프로세스의 상태를 저장하고 복원하는 과정
  • 프로세스 종료, 인터럽트 발생 시 수행

비용

  • 유휴 시간 증가: 스위칭 시 CPU 가용성 저하
  • 캐시 미스: 캐시 클리어로 인해 주소 변환 오류 방지 → 성능 하락

스레드의 컨텍스트 스위칭

  • 스택 영역 제외 모든 메모리 공유
  • 비용과 시간이 프로세스 전환보다 적음

'ZeroBase > CS' 카테고리의 다른 글

IPC  (3) 2025.08.17
프로세스의 상태  (2) 2025.08.14
DFS(깊이 우선 탐색), BFS(너비 우선 탐색)  (4) 2025.08.13
프로그램 컴파일 과정  (0) 2025.08.12
메모리 계층  (0) 2025.08.11