멀티프로세스 시스템 내에 존재하는 여러 개의 프로세스 중 어떤 프로세스에게 CPU 사용권을 넘겨줄 것인가를 결정하는 것을 말합니다.


□ 스케줄링을 통한 CPU 성능요소

 - CPU 이용율(Utilization)

   프로세스들이 CPU를 사용하는 비율로 실제로 CPU가 쉬는 시간을 측정하여 그 시간을 제외한 나머지 

   시간을 사용합니다.

 - 시스템처리율(Throughput)

   단위 시간당 완료된 작업 수를 말합니다.

 - 반환시간(Turnaround Time)

   작업에 수행되는 모든 소요시간으로 출력 장치의 속도 제한을 받습니다.

 - 대기시간(Waiting Time)

   프로세스가 준비 큐에서 대기하는 시간으로 큐의 길이에 의해 측정할 수 있습니다.

 - 반응시간(Response Time)

   프로세스가 요구한 시간으로부터 첫 번째 반응이 시작되는 대화형 시스템에서의 중요한 인자입니다.


□ 프로세스 스케줄링 정책 구분

 - 선점형 스케줄링 정책(Preemptive Scheduling Policy)

   어떤 어떤 프로세스가 CPU를 사용하고 있는 동안 다른 프로세스에 의해 그 CPU의 사용을 선점당할 수

   있는 방식으로 높은 우선순위의 프로세스로부터 요구되는 긴급처리에 유용합니다. 실시간 프로세스,

   대화식 시분할 시스템에서 빠른 응답이 가능하며 RR, SRT, 다단계 큐 등이 있습니다.

 - 비선점형 스케줄링 정책(Non-Preemptive Scheduling Policy)

   어떤 프로세스가 CPU 사용권을 다른 프로세스에 넘겨준 다음에 그 프로세스가 CPU를 사용할 수 있게 

   되는 방식을 말합니다.

 - 선입선출(FIFO)

   도착 시간 기준으로 빨리 도착한 작업을 우선 처리 합니다. 그로 인하여 대화식 시스템에는 부적합합니다.

 - 최단작업 우선 처리(SJF)

   작업 처리 기준으로 CPU 사이클의 시간의 길이가 가장 작은 것 부터 처리합니다. 선점과 비 선점 방식에

   모두 사용이 가능하며 대화식 시스템에서는 부적합합니다.

 - 우선순위(Priority) 스케줄링

   작업 중요도 기준으로 중요도에 따라서 우선순위를 결정 및 처리합니다. 우선순위가 동일 시 도착 순서

   적용처리하며, 무한정지나 기아상태가 될 수 있으나 에이징 기법 사용으로 해결이 가능합니다.

 - 최단 잔여 시간(Shortest Remaining Time First)

   잔여 시간 기준으로 가장 빨리 종료될 수 있는 작업을 우선 처리합니다.

 - 순환할달 스케줄링(Round Robin)

   공평 분배로 지정된 시간 동안 모든 작업에 CPU를 돌아가며 공평하게 할당합니다. 시분할 시스템에

   사용됩니다.

 - 다단계 큐(Feedback)

   우선순위별 여러 개의 큐를 준비하며 대기 큐에 따라 미리 정해진 스케줄링을 실행하며 각 큐 내에서

   작업들은 FCFS 방식으로 처리합니다. CPU 스케줄링 알고리즘 중 가장 일반적으로 사용합니다.


 - 우선순위 스케줄링

   프로세스에 부여된 우선순위대로 처리하는 방식으로 우선순위는 프로세스의 특성 및 종류에 따라 시스템

   에 의해 자동 부여되거나 외보적으로 부여될 수 있습니다.

 - 기한부(Deadline) 스케줄링

   작업들이 명시된 시간 내에 완료되도록 하는 방식으로 실시간 시스템과 같은 제한된 응답시간 요구분야

   에 사용될 수 있습니다.

 - 프로세스 교착상태(Deadlock)

   서로 다른 둘 이상의 프로세스들이 상대 프로세스 차지하고 있는 자원을 기다리는 무한대기 상태

   말합니다. 즉 다중 프로그램 시스템 하에서 서로 다른 프로세스가 일어날 수 없는 사건을 무한정 기다리

   며 더이상 진행되지 못하는 상태를 말합니다. 각 프로세스는 상대 자원을 놓아줄 것을 기다리면서 자신

   이 가진 자원은 놓아주지 않음으로써 서로 상대방의 자원을 기다리는 상태가 됩니다.


□ 교착상태 발생조건

 - 상호배제(Mutual Exclusion)

   한 프로세스가 공유메모리 혹은 공유자원을 사용하고 있을 때 다른 프로세스들은 이 메모리 혹은 자원

   을 사용하지 못하게 배제시키는 제어기법을 말합니다.

 - 점유와 대기(Wait)

   프로세스가 다른 자원을 요구하면서 자신에게 할당된 자원을 해제하지 않고 기다리는 프로세스가 존재

   하는 경우를 말합니다.

 - 비중단(비선점) 조건(Non-Preemption)

   프로세스에 할당된 자원을 끝날 때까지 해제할 수 없는 경우를 말합니다.

 - 환형대기조건(Circular wait)

   프로세들이 순환 사슬이 존재하며 이를 구성하는 각 프로세스는 순환 내의 이전 프로세스가 요청하는

   자원을 점유하고 다음 프로세스가 점유하고 있는 자원을 요구하는 경우를 말합니다.


'ComputerTerm' 카테고리의 다른 글

주기억장치관리 방법 및 기억장치의 단편화  (0) 2017.12.05
기억장치의 종류  (0) 2017.12.04
프로세스에 대하여  (0) 2017.12.02
운영체제의 구조와 발전  (0) 2017.11.30
운영체제의 주요기능  (0) 2017.11.28

+ Recent posts