CS자료/운영체제

[OS]Context switching

뇌장하드 2022. 3. 3. 20:43

Context switching

  • 컨텍스트(Context)란?
    • CPU가 해당 프로세스를 실행하기 위한 해당 프로세스의 정보들을 말함
    • 이러한 컨텍스트는 프로세스의 PCB(Process Control Block)에 저장된다.
    • 그렇기 때문에 이전 작업을 PCB에서 불러와서 이어서 하는 작업이 가능하다.
  • 컨텍스트 스위칭(Context Switching)?
    • 프로세스의 정보의 교체???
    • 멀티프로세싱하기 위해 CPU를 나눠서 사용하기 위해 Context를 교체하는 것이 Context Switching
  • 단점
    • Context Switching 때 해당 CPU는 아무것도 못함. → 그래서 빈번하게 스위칭이 발생하면 오버헤드가 발생해 효율 및 성능이 저하된다.
  • 🚩오버헤드란 ? 오버헤드(overhead)는 어떤 처리를 하기 위해 들어가는 간접적인 처리 시간 · 메모리 등을 말한다.
    예를 들어 A라는 처리를 단순하게 실행한다면 10초 걸리는데, 안전성을 고려하고 부가적인 B라는 처리를 추가한 결과 처리시간이 15초 걸렸다면, 오버헤드는 5초가 된다. 또한 이 처리 B를 개선해 B'라는 처리를 한 결과, 처리시간이 12초가 되었다면, 이 경우 오버헤드가 3초 단축되었다고 말한다.

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

[OS] Thread-safe  (0) 2022.03.03
[OS] Swapping  (0) 2022.03.03
[OS] Deadlock(교착상태)  (0) 2022.03.03
[OS] CPU Scheduler, Scheduling Algorithm  (0) 2022.03.03
[운영체제 정리] 1  (0) 2021.11.16