1 minute read

스케줄링의 개요

CPU 스케줄러는 프로세서 스케줄러 라고도 함

- 스케줄링

    여러 프로세스의 상황을 고려하여 CPU 와 시스템 자원을 어떻게 배정할 지 결정하는 일

    - 스케줄링의 단계

        관리의 범주를 나누어 스케눌링

        - 고수준 스케줄링

            가장 큰 틀에서 이루어지는 CPU 스케줄링

            시스템 내의 전체 작업 수를 조절하며 실행 가능한 프로세스의 총 개수가 정해짐

            어떤 작업을 시스템이 받을 지 말지 결정하므로 승인 스케줄링 이라고도 함

        - 중간 수준 스케줄링

            시스템의 부하를 조절하는 스케줄링

            시스템 과부하로 프로세스 수 조절 시 이미 활성화된 프로세스 중 일부를 보류 상태로 보냄

        - 저수준 스케줄링

            실제 작업이 이루어지는 스케줄링

            프로세스를 관리함

            준비 상태에 있는 프로세스 선택, 기준에 따른 타임 슬라이스에 따라 시스템 성능에 많은 영향 끼침

    - 스케줄링의 목적

        시스템의 안전성과 효율성을 높이기 위해 우선 순위 프로세스를 처리하므로 일정 부분 공형성 희생

        - 공평성

            모든 프로세스가 자원을 공평하게 배정받아야 함

        - 효율성

            시스템 자원이 유휴 시간 없이 사용되도록 해야 하며 유휴 자원 사용하려는 프로세스에 우선권 줘야 함

        - 안정성

            우선 순위를 중요 프로세스가 먼저 배정받아서 프로세스를 보호해야 함

        - 확장성

            프로세스가 증가해도 시스템이 안정적으로 작동하도록 조치해야 함

            시스템 자원이 늘어나는 경우 혜택이 시스템에 반영되게 해야 함

        - 반응 시간 보장

            적절한 시간 안에 프로세스의 요구에 반응하여 사용자에게 응답해야 함

        - 무한 연기 방지

            특정 프로세스의 작업이 무한히 연기되면 안 됨

Categories:

Updated: