찬환
천천히 꾸준하게
찬환
전체 방문자
오늘
어제
  • 분류 전체보기 (19)
    • Problem Solving (2)
      • BOJ (2)
    • Algorithm (3)
    • Java (1)
    • CS (7)
      • 컴퓨터구조 (3)
      • 운영체제 (2)
      • 데이터베이스 (2)
    • Web (0)
    • Spring (1)
    • Git (2)
    • 북스터디 (2)
      • 이펙티브 자바 (2)
    • Tech Stack (0)
    • 끄적끄적 (1)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Spring Ecosystem
  • 컨텍스트_스위칭
  • 이펙티브자바
  • 프로세스_메모리_구조
  • B형 후기
  • BOJ_2580
  • 폰노이만구조
  • effective_java
  • BOJ
  • 컴퓨터의_구성요소
  • 운영체제
  • backtracking
  • Arrays정리
  • 삼성 B형
  • 빌더패턴
  • Boj_14499
  • Udacity_git_commit_message_style_guide
  • 이펙티브 자바
  • git flow
  • 주사위굴리기
  • 삼성SW역량
  • java.util.arrays
  • Arrays메서드
  • ITEM_2
  • 브랜치 전략
  • SpringBoot
  • 알고리즘
  • 정적팩터리메서드
  • cs
  • Key의 종류

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
찬환

천천히 꾸준하게

컨텍스트 스위칭(Context Switching) 이란?
CS/운영체제

컨텍스트 스위칭(Context Switching) 이란?

2022. 10. 30. 23:24
728x90

컨텍스트 스위칭이란?

멀티 프로세스 환경에서 CPU가 어떤 하나의 프로세스를 실행하고 있는 상태에서 인터럽트 요청에 의해 다음 우선 순위의 프로세스가 실행되어야 할 때, 기존의 프로세스의 상태 또는 레지스터 값을 저장하고 CPU가 다음 프로세스를 수행하도록 새로운 프로세스의 상태 또는 레지스터 값을 교체하는 작업을 말한다.

 

예를 들어 프로세스 A가 있고, 프로세스 B가 있을 때, CPU가 실행하는 프로세스를 A에서 B로, B에서 A로 바꾸는 기술이라고 할 수 있다.

 

그렇다면 프로세스 A, B의 정보를 기억해야할 필요가 있는데, 이 정보를 기록하는 곳이 바로 PCB(Process Control Block) 이다.

 

PCB (Process Control Block)

PCB가 담고 있는 메타데이터

  • 프로세스 식별자(PID)
  • 프로세스 상태정보 : create, ready, running, waiting, terminated 등의 상태 정보가 담겨있다.
  • PC : 다음에 실행할 명령어의 주소가 담겨있다.
  • 레지스터 : CPU의 레지스터가 저장된다.
  • CPU 스케줄링 정보 : 우선순위, 최종 실행시각, CPU 점유시간 등이 저장
  • 메모리 관리 정보 : 해당 프로세스의 주소 공간 등이 저장
  • 입출력 상태 정보 : 프로세스에 할당된 입출력장치 목록, 열린 파일 목록 등이 저장된다.

 

728x90

'CS > 운영체제' 카테고리의 다른 글

프로세스 메모리 구조  (0) 2022.10.30
    'CS/운영체제' 카테고리의 다른 글
    • 프로세스 메모리 구조
    찬환
    찬환
    공부한 내용을 포스팅하는 IT 기술블로그입니다.

    티스토리툴바