1일 1개념정리 24.08.09.금 ~
큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.
무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#76. Convoy Effect
이것저것 찾아보다가 콘보이 현상이라는 것을 봤다. 뭔가 이름도 웃겨서 한번 정리해보려고 한다.

콘보이 현상
이는 OS에서 프로세스 스케줄링이나 자원 관리에서 발생하는 성능 저하 현상이다. 주로 FCFS같은 단순한 스케줄링에서 발생하는데, 앞에서 긴 작업이 실행되고 있어서 뒤에 있는 짧은 작업들이 못들어가 전체 시스템 성능을 떨어뜨리는 상황이다.
참고로 Convoy는 "호위"라는 뜻인데, 선두의 주요 운송 수단이 다른 작은 운송 수단들을 보호하거나 인도하는 상황을 묘사한다고 한다. 사실 호위하는 작은 차들은 피해를 보고 있는 것이지만 ....... 어쨌든 convoy 효과라고 한다.
1) Convoy Effect의 문제
- 처리량(Throughput) 감소 : 긴 작업이 완료될 때 까지 짧은 작업들 처리를 못해서 전체적인 처리량이 감소한다.
- 응답 시간 증가 : 사용자 입장에서 프로세스의 응답 시간이 느려져 사용 경험이 저하된다.
- 리소스 활용 비효율성 : CPU나 I/O 장치의 사용률이 최적화되지 않아서 전체적인 시스템 성능이 저하된다.
혹시나 이쯤에서 의문을 가질까 말하는데, 아까 말했듯 FCFS(= 먼저 온 프로세스를 먼저 처리)같은 방식에서 발생하는 문제이다 !! 먼저 온 프로세스부터 처리하는데, 100시간짜리가 들어와버린 상황인 것이다. 그래서 FCFS 방식을 쓰는데 콘보이가 발생하면 해결할 수 없는 것으로 보인다. (아예 첨부터 FSFC는 짧은 프로세스만 있을 때 사용하는 등의 제한을 두어야함)
2) 문제 해결법
이 문제를 "해결"보다는, 문제 자체가 안일어나게 하기 위해 여러 방법이 있다.
- Shortest Job First : 짧은 작업을 우선 처리하여 긴 작업의 영향을 줄임.
- Round-Robin (RR) : 프로세스가 차지하는 시간 할당량 정해놓고 순차적으로 처리하여 프로세스들이 일정한 CPU 시간을 받을 수 있도록 보장함.
- Multi-Level Queue Scheduling : 프로세스를 여러 큐로 나누어 각 큐에 다른 스케줄링 알고리즘을 적용한다. 예를 들면 상위 큐에는 짧은 작업을 위한 Round-Robin을 적용하고 하위 큐에는 FCFS를 적용할 수 있다.
- Priority Scheduling : 작업에 우선순위를 부여해 중요한 작업을 먼저 처리하게 만든다. 다만, 이 방식 또한, 우선순위에 계속 밀려서 장기간 대기하는 Starvation 현상(기아)이 발생할 수 있다.
반응형
'1일 1개념정리 (24년 8월~12월) > 운영체제 , 하드웨어' 카테고리의 다른 글
1일1개 (89) - ㅋㅋㅋㅋㅋㅋㅋㅋㅋ큐 비트 (0) | 2024.11.22 |
---|---|
1일1개 (81) - 컴퓨터에 캐시 지르기 (3) | 2024.11.14 |
1일1개 (62) - 싸울때) 너가먼저 놔라 vs 너 놓을 때 까지 나도 안놓는다 (0) | 2024.10.16 |
1일1개 (60) - 실제 메모리 아닌데~ 실제 메모리 아닌데~ (0) | 2024.10.14 |
1일1개 (27) - 동시성 문제 (2) | 2024.09.06 |