CPU Scheduling은 프로세스(Process or Job)를 CPU에 할당할 때의 정책 제반에 관한 것이다. 이는 CPU Utilization, Throughput 등의 향상을 기대할 수 있다.
1. CPU 스케줄링의 개념
- 작업(Job)을 처리하기 위해 프로세스에게 CPU 또는 각종 처리기를 할당하는 정책을 계획
2. CPU 스케줄링의 목표(?)
- 쓰루풋, CPU Utilization의 향상
- Turn around Time의 감소
- 공평성 (어떤 프로세스에게도 CPU는 할당 할수 있음), 예측성(언제 누가 얼마나 걸리는지...)
3. CPU 스케줄링의 단계
- Long-Term -> immediate -> Short-term
4. CPU 스케줄링 알고리즘의 분류 : 선점 vs. 비선점
- 선점 스케줄링이란 한 프로세스가 CPU를 할당 받고 작업을 처리하고 있고, 우선 순위가 높은 프
로세스가 들어온 경우, 진행중이던 프로세스 작업을 멈추고 우선순위가 높은 프로세스에게 CPU
를 할당하는 방식으로 시분할 시스템이나 높은 우선순위를 먼저 처리해야하는 시스템에 유리하
지만 우선순위가 낮은 프로세스는 무한 대기될 가능성이 높다.
- 비선점 스케줄링은 아무리 우선순위가 높은 프로세스가 들어오더라도, 진행중이던 프로세스 작
업을 멈추지 않고 CPU를 할당 받지 못하는 방식으로 구현하기 쉽고, 언제 끝날지 예측가능하지
만 짧은 작업시간을 가진 프로세스가 긴 프로세스 작업시간을 가진 프로세스를 기다리는 상황이
발생해서 시스템 자원의 효율성이 떨어질 수도 있다는 단점을 가지고 있다.
5. CPU 스케줄링 정책(기법)의 종류 및 특징
비선점 - 1. 우선순위 : 우선순위 높은 프로세스 선정
2. 데드라인 : 작업을 명시된 시간내에 완료하도록 계획 및 선정
3. FIFO : 먼저 대기큐에 들어온 순서대로 처리
4. SJF : 작업시간이 가장 짧은 프로세스를 선정
5. HRN : Highest Response ratio Next
Response ratio[= (대기시간 + 서비스 시간)/서비스시간]이 가장 높은 프로세스 선정
선점 - 1. SRT : Shortest Remaining Time
가장 짧은 처리시간이 남은 프로세스를 선정
2. 라운드로빈 : FIFO로 처리하되 할당시간 내에 처리 못한 프로세스는 대기큐로 다시
보냄. 할당시간이 길면 FIFO 비슷, 할당시간이 짧으면 문맥교환이 자주 일어남.
3. Multilevel Queue : 작업의 종류를 Group화 해서 종류마다 큐를 생성해서 우선순위
그룹별로 프로세스를 선정
4. Multilevel Feedback Queue : 할당시간이 다른 대기큐를 여러개 만들어 만약 짧은
할당시간 내에 처리를 못하면 그 다음 대기큐로 Put해서 다시 처리하게 하는 방식
1. CPU 스케줄링의 개념
- 작업(Job)을 처리하기 위해 프로세스에게 CPU 또는 각종 처리기를 할당하는 정책을 계획
2. CPU 스케줄링의 목표(?)
- 쓰루풋, CPU Utilization의 향상
- Turn around Time의 감소
- 공평성 (어떤 프로세스에게도 CPU는 할당 할수 있음), 예측성(언제 누가 얼마나 걸리는지...)
3. CPU 스케줄링의 단계
- Long-Term -> immediate -> Short-term
4. CPU 스케줄링 알고리즘의 분류 : 선점 vs. 비선점
- 선점 스케줄링이란 한 프로세스가 CPU를 할당 받고 작업을 처리하고 있고, 우선 순위가 높은 프
로세스가 들어온 경우, 진행중이던 프로세스 작업을 멈추고 우선순위가 높은 프로세스에게 CPU
를 할당하는 방식으로 시분할 시스템이나 높은 우선순위를 먼저 처리해야하는 시스템에 유리하
지만 우선순위가 낮은 프로세스는 무한 대기될 가능성이 높다.
- 비선점 스케줄링은 아무리 우선순위가 높은 프로세스가 들어오더라도, 진행중이던 프로세스 작
업을 멈추지 않고 CPU를 할당 받지 못하는 방식으로 구현하기 쉽고, 언제 끝날지 예측가능하지
만 짧은 작업시간을 가진 프로세스가 긴 프로세스 작업시간을 가진 프로세스를 기다리는 상황이
발생해서 시스템 자원의 효율성이 떨어질 수도 있다는 단점을 가지고 있다.
5. CPU 스케줄링 정책(기법)의 종류 및 특징
비선점 - 1. 우선순위 : 우선순위 높은 프로세스 선정
2. 데드라인 : 작업을 명시된 시간내에 완료하도록 계획 및 선정
3. FIFO : 먼저 대기큐에 들어온 순서대로 처리
4. SJF : 작업시간이 가장 짧은 프로세스를 선정
5. HRN : Highest Response ratio Next
Response ratio[= (대기시간 + 서비스 시간)/서비스시간]이 가장 높은 프로세스 선정
선점 - 1. SRT : Shortest Remaining Time
가장 짧은 처리시간이 남은 프로세스를 선정
2. 라운드로빈 : FIFO로 처리하되 할당시간 내에 처리 못한 프로세스는 대기큐로 다시
보냄. 할당시간이 길면 FIFO 비슷, 할당시간이 짧으면 문맥교환이 자주 일어남.
3. Multilevel Queue : 작업의 종류를 Group화 해서 종류마다 큐를 생성해서 우선순위
그룹별로 프로세스를 선정
4. Multilevel Feedback Queue : 할당시간이 다른 대기큐를 여러개 만들어 만약 짧은
할당시간 내에 처리를 못하면 그 다음 대기큐로 Put해서 다시 처리하게 하는 방식
'IT정보기술자료' 카테고리의 다른 글
RTTI (Run-Time Type Infomation) (0) | 2007.02.28 |
---|---|
IS-95A, IS-95B, IS-95C 차이점 (0) | 2007.02.28 |
web2.0의 10가지 기술들 (0) | 2007.02.28 |