Presentation is loading. Please wait.

Presentation is loading. Please wait.

Operating system #5 Disk Scheduling

Similar presentations


Presentation on theme: "Operating system #5 Disk Scheduling"— Presentation transcript:

1 Operating system #5 Disk Scheduling
조태문

2 Overview 주기억 장치는 모든 프로그램을 저장하기에는 너무 용량이 부족하므로 필요한 모든 프로그램을 동시에 저장할 수 없고 데이터는 영구적인 속성을 갖으며 휘발성이므로 전원이 중단되면 기억된 모든 정보가 소멸된다 위와 같은 주기억 장치의 단점을 보완하며 다량의 데이터를 영구히 기억하여 보존할 수 있게 하려고 보조기억 장치를 사용한다 이 장은 자기 디스크에 대해 설명/기술한다.

3 Megnetic disc 1/2 알루미늄 합금의 원판 표면에 자성물질을 입힌 기억장치
정보는 다수 동심원 위의 트랙에 기억되어 고속 회전하는 디스크의 표면과 미소간격을 유지하여 위치가 정해진 자기 헤드를 통해 기록 또는 판독 엑세스 시간이 짧고 대량의 정보를 기억할 수 있지만 용량의 비해 정밀도가 떨어짐.

4 Megnetic disc 2/2 자기 디스크의 3대 구성요소 디스크(disk) 헤드(head) 엑세스 암(access arm)
자기 디스크의 구조 트랙(Track) : 디스크의 동심원 섹터(sector) : 부채꼴 모양 실린더(cylinder) : 앞뒤의 같은 트랙 번호(동일 수직선상) 섹터 : 디스크에 한 번 쓰거나 읽은 데이터 크기의 최소 단위 실린더(cylinder) : 대량의 데이터를 순차적으로 저장할 때 실린더 단위로 저장 자기 디스크 시스템에서 데이터의 전송 단위는 물리적으로 섹터 단위 하나의 섹터를 정확히 지정하기 위해 실린더 번호, 표면 번호, 섹터 번호가 필요

5 Access time for megnetic disc
디스크 액세스 시간 = 탐색시간+회전지연시간+데이터전송시간 탐색시간(Seek Time) 헤드를 해당 트랙으로 이동하는데 걸리는 시간, 10-30ms로 비중이 큼 회전 지연 시간(Latency Time)=서어치 시간(Search Time) 해당 섹터가 헤드 아래로 회전 되어 올 때까지의 시간이다. 데이터 전송 시간(Data Transfer Time) 헤드를 통해 디스크의 특정 지역에 데이터를 저장하거나 읽는데 걸리는 시간이다.(디스크와 주기억장치 사이에 전송하는 시간)

6 RAID 1/2 RAID(RAID(Redundant Array of Inexpensive Disk; 복수 배열 독립 디스크)는 중요한 데이터를 가지고 있는 서버에 주로 사용되며, 여러 대의 하드디스크가 있을 때 동일한 데이터를 다른 위치에 중복해서 저장하는 방법 각기 저장 방법에 따라 번호로 Level을 구분한다. 0, 1, 2, 3, 4, 5, 6, 7, 10, 53 등이 이에 속하며 0과 1을 혼용하여 사용하기도 한다. 하나의 RAID는 운영체계에게 논리적으로는 하나의 하드디스크로 인식된다. RAID는 스트라이핑 기술을 채용하여 각 드라이브의 저장공간을 1 섹터(512 바이트)의 크기에서부터 수 MB에 이르는 공간까지 다양한 범위로 파티션할 수 있다. 모든 디스크의 스트라이프는 인터리브되어 있으며, 차례대로 어드레싱된다.

7 RAID 2/2 스트라이핑(strping)? 인터리브(interleave)?
RAID Level 0은 스트라이핑(Striping) 방식이라고 하는데, 최소 2개 이상의 HDD를 사용하게 되며 연속적인 데이터의 기록시 각각의 HDD마다 서로 다른 데이터를 번갈아 가며 동시에 기록하거나 읽어 들이는 방식 인터리브(interleave)? 하드디스크 헤드는 플레터의 고속회전으로 인해 저장된 정보를 한 번에 읽어 들일 수가 없습니다. 예를 들어 1,2,3,4,5라는 데이터가 연속적으로 플레터에 기록되어 있다면, 1을 읽은 후엔 어느새 4라는 데이터 위에 옮겨가게 됩니다. 따라서 2라는 데이터를 읽기 위해서 플레터는 한번 더 회전해야 합니다. 또 디스크 헤드는 연속된 데이터를 섹터 단위로 읽어오는데 이 섹터 정보를 CPU에 보내는 시간이 소요되기 때문에 다음 몇 섹터를 읽지 못합니다. 이렇게 건너뛰는 섹터수에 대한 읽은 섹터의 비율을 인터리브 값이라 함

8 RAID 0 이 방식은 스트라이프를 가지고는 있지만 데이터를 중복해서 기록하지 않는다. 따라서, 가장 높은 성능을 기대할 수 있지만, 고장대비 능력이 전혀 없으므로 이 방식은 진정한 RAID라고 하기 어렵다.

9 RAID 1 흔히 디스크 미러링이라고도 하는데, 중복 저장된 데이터를 가진 적어도 두 개의 드라이브로 구성된다. 각 드라이브를 동시에 읽을 수 있으므로 읽기 성능은 향상된다. 쓰기 성능은 단일 디스크 드라이브의 경우와 정확히 같다. RAID-1은 다중 사용자 시스템에서 최고의 성능과 최고의 고장대비 능력을 발휘한다.

10 RAID2 이 형식은 디스크들간에 스트라이프를 사용하며, 몇몇 디스크들은 에러를 감지하고 수정하는데 사용되는 ECC 정보가 저장되어 있다. 이 방식은 RAID-3에 비해 장점이 없다.

11 RAID3 스트라이프를 사용하며, 패리티 정보를 저장하기 위해 별도의 드라이브 한 개를 쓴다. 내장된 ECC 정보가 에러를 감지하는데 사용된다. 데이터 복구는 다른 드라이브에 기록된 정보의 XOR를 계산하여 수행된다. 입출력 작업이 동시에 모든 드라이브에 대해 이루어지므로, RAID-3은 입출력을 겹치게 할 수 없다. 이런 이유로 RAID-3는 대형 레코드가 많이 사용되는 업무에서 단일 사용자시스템에 적합하다.

12 RAID4 대형 스트라이프를 사용하며, 이는 사용자가 어떤 단일 드라이브로부터라도 레코드를 읽을 수 있다는 것을 의미한다. 이것은 데이터를 읽을 때 중첩 입출력의 장점을 취할 수 있도록 한다. 모든 쓰기 작업은 패리티 드라이브를 갱신해야하므로, 입출력의 중첩은 불가능하다. RAID-4는 RAID-5에 비해 장점이 없다.

13 RAID 5 회전식 패리티 어레이를 포함한다. 그러므로 RAID-4에서의 쓰기 제한을 주소 지정한다. 그러므로 모든 읽기/쓰기 동작은 중첩될 수 있다. RAID-5는 패리티 정보를 저장하지만 데이터를 중복저장하지는 않는다 (그러나 패리티 정보는 데이터를 재구성하는데 사용될 수 있다). RAID-5는 보통 3 ~ 5개의 디스크를 어레이로 요구한다. RAID-5는 성능이 그리 중요하지 않고 쓰기 작업이 많지 않은 다중 사용자시스템에 적합하다.

14 RAID 6 이 형식은 RAID-5와 비슷하지만, 다른 드라이브들 간에 분포되어 있는 2차 패리티 구성을 포함함으로써 매우 높은 고장대비 능력을 제공한다. 현재로서는 RAID-6의 상용 모델은 거의 없다.

15 RAID 0+1 Raid 0과 1을 합해 놓은 것으로 속도와 데이터 안정성이 중요할 때 사용

16 Disk Scheduling techique
필요성 여러 사용자가 서로 다른 트랙에 있는 데이터 블록에 대한 입출력을 요구할 때 효율적인 처리를 위함 목적 처리율(Throughput)을 극대화하여 평균 응답 시간(Mean Response Time)을 최소화하는데 있다. 응답 시간의 편차를 줄여 응답 시간의 예측성(Predictability)을 높이는데 있다.

17 FCFS(First Come First Served)
가장 간단한 스케줄링 디스크 입출력 요청 대기 큐에 들어온 순서대로 서비스를 받음 장점 프로그래밍이 쉬움 대기 큐에 들어온 순서대로 서비스하기 때문에 더 높은 우선순위 요청이 입력되어도 순서가 바뀌지 않아 공평성이 보장 단점 헤드 이동거리가 길어질 수 있음 디스크 오버헤드(서비스 요구 횟수)가 커지면 응답시간이 길어짐

18 SSTF(Shortest Seek Time First)
탐색 시간이 가장 짧은 트랙으로 헤드를 이동시키는 방법 장점 - FCFS보다 처리량이 많고, 평균 탐색시간이 짧음 단점 - 현재 서비스한 트랙에서 가장 가까운 트랙에 대한 서비스 요청이 계속 발생하는 경우, 먼 거리의 트랙에 대한 서비스는 무한정 기다려야 하는 기아 상태가 발생할 수 있음

19 SCAN SSTF가 갖는 탐색시간의 편차를 해소하기 위한 방법
디스크 헤드가 맨 바깥쪽 트랙에서 가장 안쪽 트랙 쪽으로 이동하면서 해당되는 트랙에 대한 요구를 차례대로 서비스해 주는 방식 디스크 오버헤드가 적어야 가장 좋은 효율을 가짐 대부분의 디스크 스케줄링에서 기본 전략으로 이용 밀도가 높은 쪽의 요청은 상당히 오랜 시간 대기하게 됨

20


Download ppt "Operating system #5 Disk Scheduling"

Similar presentations


Ads by Google