[운영체제] cpu 스케쥴링

Wuchang·2023년 2월 24일
0

운영체제

목록 보기
2/9

기본 개념

💡 **일을 쉬지 않고 계속 시키는 것이 OS의 숙제!**
  • CPU-I/O 버스트(Burst) Cycle
    • 프로세스 실행은 CPU 실행 및 입출력(I/O) 대기로 구성
  • CPU 버스트 분포 →많은 수의 짧은 CPU 버스트와 적은 수의 긴 CPU 버스트 존재
    • I/O-bound 프로그램 -> 많은 수의 짧은 CPU 버스트
    • CPU-bound 프로그램 -> 적은 수의 긴 CPU 버스트

CPU 스케쥴러

**CPU 스케쥴러?**

→ 메모리에 있는 프로세스들 중 실행할 준비가 되어있는 Ready 상태의 프로세스를 선택하고, 그 프로세스에 CPU를 할당.

  • 프로세스 스케쥴링 결정은 다음 네가지의 상황에서 발생
    -한 프로세스가 실행 상태에서 대기 상태로 전환 될 때
    -프로세스가 실행 상태에서 준비 완료 상태로 전환될 때
    -프로세스가 대기 상태에서 준비 완료 상태로 전환될 때
    -프로세스가 종료될 때

디스패쳐

  • 디스페쳐 작업
    -> context switch
    -> 사용자 모드로 전환
    -> 프로그램을 다시 시작하기 위해 사용자 프로그램의 적절한 위치로 이동
  • 디스패치 지연(Latency)
    ->하나의 프로세스를 중지하고 다른 프로세스를 실행시킬 때 소요되는 시간
profile
우창의 개발일지🐈

0개의 댓글