문제
최근 SNS(Social Network Service), 멀티미디어, Big Data의 급격한 증가는 정보 시스템의 안정성을 유지하기 위해 디스크의 효율적 관리의 중요성을 부각시켰습니다. 다음에 대해 설명하세요.
1. 디스크 스케줄링의 일반적인 목표
2. 이동 디스크와 고정 디스크의 자료 접근 시간
3. 이동 디스크와 고정 디스크에 적합한 디스크 스케줄링 알고리즘 유형 및 특성
답안
디스크 스케줄링은 디스크의 읽기/쓰기 성능을 최적화하기 위한 방법으로, 다음과 같은 목표를 추구합니다.
1. 탐색 시간(Seek Time) 최소화:
• 디스크 헤드가 특정 데이터가 위치한 트랙으로 이동하는 데 소요되는 시간을 줄입니다.
• 탐색 시간을 최소화하면 입출력 작업의 전반적인 처리 속도가 개선됩니다.
2. 응답 시간(Response Time) 단축:
• 데이터 요청에 대한 첫 응답까지의 시간을 줄여, 시스템의 전반적인 응답 속도를 향상시킵니다.
3. 회전 지연(Rotational Latency) 최소화:
• 디스크가 회전하면서 헤드가 필요한 데이터 섹터에 도달하기까지의 대기 시간을 줄입니다.
• 플래터의 회전 속도에 영향을 받으며, 최소화할 경우 데이터 접근 속도가 증가합니다.
4. 처리량(Throughput) 최대화:
• 주어진 시간 동안 처리할 수 있는 입출력 요청의 수를 늘려 디스크의 처리 성능을 최대화합니다.
5. 기아(Starvation) 방지:
• 특정 요청이 무한정 대기하지 않도록 하여, 모든 요청이 공정하게 처리되도록 합니다.
디스크의 물리적 특성에 따라 자료 접근 시간이 다릅니다.
1. 이동 디스크 (Moving Disk):
• **HDD (Hard Disk Drive)**와 같은 회전식 디스크로, 플래터와 읽기/쓰기 헤드가 구성되어 있습니다.
• 자료 접근 시간은 탐색 시간(Seek Time), 회전 지연(Rotational Latency), **데이터 전송 시간(Transfer Time)**을 포함합니다.
• 탐색 시간: 헤드가 원하는 트랙으로 이동하는 시간으로, 플래터가 회전하면서 헤드가 목표 트랙에 도달하는데 영향을 미칩니다.
• 회전 지연: 플래터가 회전하면서 헤드가 요청한 섹터까지 도달하는 대기 시간입니다.
2. 고정 디스크 (Fixed Disk):
• **SSD (Solid State Drive)**와 같은 플래터나 기계적 움직임이 없는 디스크입니다.
• 자료 접근 시간이 주로 반도체 메모리의 전자적 특성에 의해 결정되며, 이동 디스크에 비해 매우 짧습니다.
• 탐색 시간과 회전 지연이 없기 때문에 접근 시간이 일정하고 매우 빠릅니다.
이동 디스크와 고정 디스크에 적합한 디스크 스케줄링 알고리즘 유형 및 특성
1. 이동 디스크 (Moving Disk)
이동 디스크에서는 디스크 헤드의 물리적 이동에 따른 탐색 시간과 회전 지연이 성능에 큰 영향을 미칩니다. 이에 따라 탐색 시간을 줄일 수 있는 스케줄링 기법이 적합합니다.
• SSTF (Shortest Seek Time First):
• 특징: 현재 위치에서 가장 가까운 요청을 먼저 처리하여 탐색 시간을 줄이는 알고리즘입니다.
• 장점: 탐색 시간을 줄여서 디스크 접근 속도를 높일 수 있습니다.
• 단점: 특정 요청이 계속 밀려 기아 현상이 발생할 수 있습니다.
• SCAN (Elevator Algorithm):
• 특징: 헤드가 한 방향으로 이동하며 요청을 처리하고, 끝에 도달하면 반대 방향으로 이동하는 방식입니다.
• 장점: 요청이 밀리지 않고 공정하게 처리될 수 있습니다.
• 단점: 한 방향으로 이동하며 요청을 처리하므로 회전 지연이 발생할 수 있습니다.
• C-SCAN (Circular SCAN):
• 특징: SCAN의 변형으로, 한쪽 끝에서 다른 쪽 끝으로 이동하고, 끝에 도달하면 처음으로 돌아가며 다시 같은 방향으로 이동하는 방식입니다.
• 장점: SCAN보다 기아 현상이 줄어들고, 요청들이 더 공정하게 처리됩니다.
• 단점: 끝에서 처음으로 돌아가는 추가적인 시간이 발생할 수 있습니다.
2. 고정 디스크 (Fixed Disk)
고정 디스크는 이동에 따른 탐색 시간이 없으므로, 요청 순서의 최적화보다도 병렬 처리를 지원하거나 데이터 전송량을 최대로 처리할 수 있는 방식이 적합합니다.
• FCFS (First Come First Served):
• 특징: 요청이 들어온 순서대로 처리하여 기아 현상이 발생하지 않으며, 고정 디스크에서 손쉬운 구현이 가능합니다.
• 장점: 간단한 알고리즘으로 요청 순서를 유지해 공정성을 보장합니다.
• 단점: 요청이 분산되어 있는 경우 전체 처리 속도가 감소할 수 있습니다.
• Deadline Scheduling:
• 특징: 요청에 마감 시간을 설정하고, 이를 기준으로 요청을 우선 처리하여 성능을 유지하는 기법입니다.
• 장점: 고정 디스크의 빠른 속도를 기반으로 중요도가 높은 요청을 빠르게 처리할 수 있습니다.
• 단점: 특정 요청이 밀릴 가능성이 있어, 마감 시간이 없는 요청이 지연될 수 있습니다.
• CFQ (Completely Fair Queuing):
• 특징: 요청을 큐에 분산하여 공정하게 처리하는 방식으로, 각 요청자에게 동일한 처리 자원을 배분합니다.
• 장점: 고정 디스크에서 여러 요청을 공정하게 처리할 수 있으며, 다양한 요청을 동시에 처리하는 고정 디스크의 장점을 극대화할 수 있습니다.
• 단점: 요청이 분산되면 일정한 처리 지연이 발생할 수 있습니다.
요약
디스크 스케줄링은 데이터 접근 시간을 최적화하여 디스크 성능을 높이는 목표를 가지며, 물리적 특성에 따라 적합한 알고리즘이 달라집니다. 이동 디스크(HDD)는 탐색 시간을 최소화할 수 있는 SCAN, SSTF와 같은 알고리즘이 유리하며, 고정 디스크(SSD)는 빠른 접근 속도를 활용할 수 있는 FCFS, CFQ가 적합합니다.