제어장치 (CU) - "스케쥴링"

- 프로그램을 실행 -> 프로세스

- 작업을 처리 -> 쓰레드

 


CPU 잘 사용을 위한 방법

- 공통 배정조건 : 오버헤드 ↓ / 사용률 ↑ / 기아 현상 ↓

  • 오버헤드 : 프로세스가 필요한 자원보다 더 많이 사치부리며 사용하지 않도록
  • 사용률 : 프로세스가 최대한 자원을 많이받고 빨리 처리하도록 
  • 기아 현상 : 프로세스가 자원할당을 못받아서 배고픈상태로 대기하지 않도록

 

 

 

 

 


 

스케쥴링 종류

1. Priority Scheduling(우선순위 스케쥴링)

- 우선순위가 낮은 프로세스는 할당되지 않기도 하는데, 이를 기아(Starvation)이라고 부릅니다. 

-방지하기 위한 해결법으로는 노화(Aging)이 있는데 기다리는 시간에 따라 우선순위를 증가시켜주는 방식입니다.

 

2. Round Robin(라운드로빈)

-정해진 시간 할당량 만큼 프로세스를 할당한 뒤, 작업이 끝난 프로세스는 준비완료 큐(순환 큐)의 가장 마지막에 가서 재할당을 기다리는 방법

 

3. Multilevel-Queue(다단계 큐)

- 준비완료 큐를 여러개의 큐로 분류하여 각 큐가 각각 다른 스케쥴링 알고리즘을 가지는 방식. 


비선점 스케쥴링(Non-Preemptive Scheduling)

- 프로세스 종료 or I/O 등 이벤트가 있을 때까지 실행 보장

 

 

 


SJF(Shorted Job First)

  • 수행시간이 가장 짧다고 판단되는 작업 먼저 수행
  • FCFS 보다 평균 대기 시간 감소, 짧은 작업에 유리

 

 

 

 

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

[CS] CPU 와 메모리  (0) 2023.08.17

 

     


    H2 제목

     

     


    컴퓨터를 푸드트럭에 비유해보자

     

    - 푸드를 주문하는 주문대 = 입력장치

    - 메뉴판 = 출력 장치

    - 요리사 = CPU

     

    -요리사(CPU) 

      - 우뇌 = 산술논리 연산장치(ALU)

      - 좌뇌 = 스케쥴을 제어하는 역할(CU)

      - 양손 = 메모리 유닛, 캐시 메모리

     


     

    H3 중제목

    • 레지스터 = CPU
    • 캐시메모리(SRAM), 메인 메모리(DRAM) = 주 기억장치
    • 하드디스크(HDD) = 보조 기억장치

     

     

     


    캐시 메모리(L2, L3)

    - 컴퓨터가 꺼지만 지워지지만 제일 빠르게 조회할 수 있는 공간.

    - 푸드트럭의 조리대.

     

     

     

     


    보조 기억장치

    데이터와 프로그램을 반영구적으로 저장

    - 푸드트럭의 창고공간 역할.

     


    CPU의 성능 

    - 클럭 : CPU 내부에서 일정한 주파수를 가지는 신호로, 이 신호로 모든 명령어가 동작

     

    - 코어: 멀티 코어들은 싱글 코어에 비해서 마치 여러 개의 CPU(요리사)가 작동하듯이 많은 연산을 빠르게 병렬 처리할 수 있습니다.

     


    정리

     🚚 = 요리사🧑‍🍳 + 주문대⌨️ + 선반🍽️ + 조리대 + 창고📦 + 재료🍅 + 레시피🧾 + 수령대🖥️

     

    🧑‍🍳 = 좌뇌🧠 + 우뇌🧠 + 오른손✋ + 왼손✋

     

    주문대에서 주문이 들어오면 요리사🧑‍🍳(CPU)가 주문표⌨️입력 데이터)를 선반🍽️(주 기억장치)에 걸어두고 창고📦(보조 기억장치)에서 필요한 레시피🧾(프로그램)와 재료🍅(저장 데이터)를 선반으로 가져옵니다.

     

     

     

     

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

    [CS] CPU 와 메모리 심화  (0) 2023.08.18

    + Recent posts