Lecture #8 제6장 보조저장장치
강의 목차 6.1 자기 디스크 6.2 RAID 6.3 광 저장장치
자기 디스크 (Magnetic Disk) (1) 자화될 수 있는 물질로 코팅된 플라스틱이나 금속을 이용한 원형 평판으로 만들어진 저장장치 하드 디스크(hard disk), 혹은 디스크(disk) 주요 구성 요소들 원형 평판(circular platter) 동심원 형태의 다수의 트랙(track)들로 구성 트랙 상에 데이터가 저장 헤드(head) : 전도성 코일을 통하여 표면을 자화시킴으로써 데이터를 저장하는 장치 디스크 팔(disk arm) : 헤드를 이동시키는 장치 구동장치(actuator) : 디스크 팔을 움직이는 모터(motor) Computer Architecture
자기 디스크 (Magnetic Disk) (2) 디스크 쓰기(Disk Write) 헤드의 코일에 전류가 흐르면 자장이 발생하는 전기적인 성질 이용 전기적 신호를 헤드에 보내어 양의 전류 또는 음의 전류에 따라 다른 형태의 자성 패턴을 표면에 기록 디스크 읽기(Disk Read) 자장이 존재하는 곳에 코일이 지나가면 코일에 전류가 발생하는 전기적인 성질을 이용 디스크 표면이 회전하는 동안에 원하는 데이터가 저장되어 있는 트랙 부분이 헤드 밑을 통과하면 기록될 때와 동일한 극성의 전류가 생성 Computer Architecture
자기 디스크 (Magnetic Disk) (3) 헤드의 수에 따른 디스크의 분류 단일-헤드 디스크(single-head disk) 다중-헤드 디스크(multiple-head disk) Computer Architecture
자기 디스크 (Magnetic Disk) (4) 헤드의 이동성에 따른 분류 Disk Arm / Actuator 이동-헤드 디스크(movable-head disk) 단일-헤드 디스크 : 헤드를 이동시키면서 디스크 표면의 데이터를 액세스 헤드 이동 시간이 길어진 접근 시간이 늘어남 다중-헤드 디스크 : 헤드 이동 거리 단축 고정-헤드 디스크(fixed-head disk) 각 트랙 당 헤드를 한 개씩 설치 탐색 시간 = 0 제작 비용이 높아짐 빠른 접근 시간을 요구하는 특수 시스템에서만 적용 Computer Architecture
디스크의 구조 섹터(sector) 섹터간 갭(inter-sector gap) 트랙간 갭(inter-track gap) 디스크에 한 번에 쓰거나 읽는 데이터 크기의 최소 단위 대부분의 디스크에서는 512 바이트 섹터간 갭(inter-sector gap) 섹터들을 구분하기 위한 간격(gap) 트랙간 갭(inter-track gap) 헤드가 잘못 정렬되거나 자장의 간섭 때문에 발생하는 오류를 방지하기 위한 트랙들 사이의 간격 전형적인 디스크의 사양 표면당 트랙의 수 = 500 ∼ 2000 개, 트랙당 섹터의 수 = 32 개 Computer Architecture
디스크 표면의 세부 구조 Computer Architecture
등각속도 (Constant Angular Velocity, CAV) 디스크가 일정한 속도로 회전하는 상태에서 트랙의 위치에 상관없이 데이터를 동일한 비율로 액세스하는 방식 장점 : 디스크 읽기/쓰기 장치가 간단하다 단점 : 저장 공간이 낭비된다 (바깥쪽 트랙이 안쪽 트랙보다 더 길지만, 저장하는 데이터 양은 같아야 하기 때문) 참고: CLV(Constnt Angular Velocity) Computer Architecture
디스크 형식화 작업 (Disk Formatting) 디스크 포맷팅 디스크의 구성을 검사하고, 그에 관한 정보와 트랙의 시작점, 섹터의 시작과 끝을 구분하기 위한 제어 정보 등을 디스크상의 특정 위치에 저장하는 과정 Low-level formatting High-level formatting 트랙 형식의 예 섹터 크기 = 600 바이트 (512바이트 데이터 + 제어 정보) 제어 정보(ID 필드) 섹터를 구분하는 데 필요한 식별자 또는 주소 SYNCH 바이트, 트랙 번호, 헤드 번호, 섹터 번호, 오류 검출 코드 Computer Architecture
트랙 형식의 예 Computer Architecture
디스크 드라이브 (Disk Drive) (1) 디스크, 헤드가 부착된 디스크 팔, 구동장치, 디스크를 회전시키는 축(spindle), 데이터 전송에 필요한 전자 회로 등을 포함한 전체 패키지 디스크 이동성에 따른 분류 제거불가능 디스크(non-removable disk) : 디스크 드라이브 내에 고정시킨 디스크 (하드 디스크) 제거가능 디스크(removable disk) : 디스크 드라이브로부터 꺼낼 수 있으며, 다른 디스크 드라이브에 삽입시켜 데이터를 읽거나 쓸 수 있는 디스크 (플로피 디스크(floppy disk)) 디스크 면 수에 따른 분류 양면 디스크(double-sided disk) 단면 디스크(single-sided disk) Computer Architecture
디스크 드라이브 (Disk Drive) (2) 실린더(Cylinder) 서로 다른 디스크 표면에 있지만 같은 반경에 위치하고 있어서, 디스크 팔을 움직이지 않고도 동시에 액세스할 수 있는 트랙들의 집합 한 파일의 데이터를 같은 실린더에 배치함으로써 접근 속도를 높일 수 있다 윈체스터 디스크(Winchester Disk) 윈체스터 헤드를 오염 물질이 들어갈 수 없도록 봉합된 드라이브 패키지 에 내장 디스크 헤드가 플래터 표면에 더 근접하여 동작 헤드 크기 축소 디스크 저장 밀도 증가 Computer Architecture
단일-평판 디스크 드라이브의 내부 구조 Computer Architecture
다중-평판 디스크 드라이브의 내부 구조 Computer Architecture
디스크 액세스 시간 (1) 디스크 액세스(읽기/쓰기) 동작의 순서 디스크 액세스 시간(disk access time) 헤드를 해당 트랙으로 이동 원하는 섹터가 헤드 아래로 회전되어 올 때까지 대기 데이터를 전송 디스크 액세스 시간(disk access time) 디스크 액세스 시간 = 탐색 시간 + 회전 지연 시간 + 데이터 전송 시간 탐색 시간(seek time) : 1번에 걸리는 시간 회전 지연 시간(rotational latency time) : 2번에 걸리는 시간 데이터 전송 시간(data transfer time) : 3번에 걸리는 시간 및 디스크 제어기(disk controller)에서 소요되는 시간 Computer Architecture
디스크 액세스 시간 (2) 탐색 시간 회전 지연 시간 데이터 전송 시간 기계적인 동작으로 인한 구동시작시간(startup time)을 요구 전체 액세스 시간에서 대부분의 시간을 차지 회전 지연 시간 최근 3상 교류 전동기 등을 사용하여 5400, 7200, 10000 및 15000 rpm 등으로 회전 속도 증가 유체 베어링 등을 사용하여 금속 마찰 및 발열 등에 의한 속도 한계를 극복 데이터 전송 시간 블록 크기, 트랙의 저장 밀도, 버스 전송률, 제어기 내부회로 지연 시간 및 버퍼 메모리 크기 등에 의해 결정 Computer Architecture
디스크 인터페이스 방식 IDE(Integrated Drive Electronics) EIDE(Extended IDE) Ultra ATA Ultra DMA SCSI(Small Computer System Interface) Ultra SCSI SATA SATA-2 Computer Architecture
RAID(Redundant Array of Inexpensive Disks) 컴퓨터 시스템에서의 하드디스크 역할 비중 증가 프로세서 및 반도체 기억장치의 속도와 디스크 속도간의 급격한 차이 대용량의 저장 공간에 대해 요구 증가 한 개의 대형 디스크를 사용하는 것보다, 크기가 작은 여러 개의 디스크들을 서로 연결하여 하나의 큰 용량을 가진 디스크 유니트로 구성하는 것이 보다 저렴한 가격으로 더 큰 용량을 가진 디스크 서브시스템 구성 가능 장점 데이터 분산 저장에 의한 동시 액세스(concurrent access) 가능 병렬 데이터 채널에 의한 데이터 전송 시간 단축 저비용에 고용량의 저장 공간 확보 문제점 결함허용도(fault tolerance) 저하 Computer Architecture
디스크 인터리빙 (disk interleaving) 단순 디스크 배열(Disk Array) 여러 개의 디스크 장치를 이용한 구성한 디스크 서브시스템 디스크 인터리빙 디스크 배열에서 데이터 블록들을 여러 개의 디스크들에게 분산 저장하는 기술 균등 분산 저장을 위하여 라운드-로빈(round-robin) 방식을 사용 Computer Architecture
디스크와 디스크 배열의 특성 비교 디스크 배열 단점 Computer Architecture
디스크 배열의 단점 디스크 배열의 주요 단점 : MTTF(Mean Time To Failure)의 저하 배열내 디스크들의 수 [예] MTTF=30000 시간인 디스크 100 개를 이용한 디스크 배열의 MTTF 30000/100 = 300 시간 디스크 배열의 결함허용도(fault-tolerance)를 높이기 위하여 RAID가 제안됨 핵심 기술 : 검사 디스크(check disk)들을 추가하여 오류 검출 및 복구 기능 추가 결함 발생시 복구 과정 : 배열내의 한 디스크에 결함 발생 해당 디스크 사용 중단 검사 디스크에 저장된 정보를 이용하여 원래의 정보 재구성 여분의 디스크에 복구 Computer Architecture
RAID의 종류 데이터 인터리빙 및 오류 검출, 복구 방식에 따라 분류 RAID 종류 일반적으로 RAID-5가 많이 사용됨 Computer Architecture
RAID-1 디스크 반사(disk mirroring) 방식 이용 - 데이터 디스크에 저장된 모든 데이터들은 짝(pair)을 이루고 있는 반사 디스크의 같은 위치에 복사 장점 : 거의 완전한 결함허용도 제공 단점 : 가격이 높다 주요 용도 : 높은 신뢰도를 요구하는 결함허용시스템에 주로 사용 시스템 소프트웨어 혹은 중요한 데이터 파일 저장에 사용 Computer Architecture
RAID-2 (1) 비트-단위 인터리빙 방식 사용 - 데이터를 각 디스크에 비트 단위로 분산 저장 해밍 코드(Hamming code)를 이용한 오류 검출 및 정정 방식 사용 단점 : 필요한 검사 디스크들의 수가 많아서 가격이 비싸다 주요용도 : 오류가 많이 발생하는 환경에서 사용 Computer Architecture
RAID-2 (2) 검사 디스크들의 수: G : 데이터 디스크의 수 C : 필요한 검사 디스크들의 수 2C - 1 ≥ G + C [예] G = 8 인 경우 : 검사 디스크 C = 4, 오버헤드 = 50 % G = 16 인 경우 : 검사디스크 C = 5, 오버헤드 = 31 % Computer Architecture
RAID-3 RAID-2의 문제점을 해결하기 위해 패리티 방식을 이용한 오류 검출 및 정정 방식 사용 패리티 비트 p = b1 b2 b3 b4 b2가 저장된 디스크에 결함이 발생한 경우의 데이터 복구 b2 = p b1 b3 b4 장점: 병렬 데이터 읽기/쓰기 가능 디스크 액세스 속도 향상 단점: 쓰기 동작 때마다 패리티 비트 갱신 필요 시간 지연 발생 Computer Architecture
RAID-4 (1) 블록-단위 인터리빙 방식을 사용 데이터 디스크들의 동일한 위치에 있는 블록들에 대한 패리티 블록을 패리티 디스크에 저장 문제점: 매 쓰기 동작을 위해 패리티 디스크를 두 번씩 액세스 병목 현상 발생 Computer Architecture
RAID-4 (2) 데이터 블록의 쓰기(갱신) 과정 두 번째 디스크에 저장된 블록 B2를 B2'로 갱신하는 경우 새로운 패리티 블록 P' = B1 B2' B3 B4 세 번의 디스크 읽기(B1, B3 및 B4 읽기)와 두 번의 디스크 쓰기(새로운 데이터 및 패리티 쓰기) 동작들이 필요 Overhead (성능 저하) 디스크 액세스 횟수의 최소화 방법 P' = B1 B2' B3 B4 (B2 B2) = (B1 B2 B3 B4) B2 B2' = P B2 B2' 디스크 수에 상관없이, 한 블록 갱신에 네 번의 디스크 액세스만 필요 원래 데이터 읽기, 원래 패리티 읽기, 새로운 데이터 쓰기, 새로운 패리티 쓰기 Computer Architecture
RAID-5 (1) RAID-4의 문제점을 보완하기 위하여 패리티 블록을 라운드-로빈 방식으로 분산 저장 장점: 패리티 디스크에 대한 병목 현상 해소 쓰기 동작들의 병렬 수행 가능 데이터 디스크들의 수가 G 개일 때, 최대 (G+1)/2 번의 쓰기 동작들이 병렬 수행 가능 데이터 블록의 크기 및 입출력 요구 패턴에 상관없이 좋은 성능 제공 Computer Architecture
RAID-5 (2) 문제점: 작은 쓰기 문제(small write problem) RAID-1과 RAID-5의 비교 Computer Architecture
광 저장장치(Optical Storage Device) CD-ROM (Compact Disk Read Only Memory) 제조 방법 : 폴리카보네이트(polycarbonate) 평판 상부를 알루미늄 코팅 정보 저장 : 고강도(high-intensity) 레이저를 이용하여 표면상의 미세 피트(microscopic pit)들에 정보를 기록 정보 검색 : 저전력 레이저를 이용하여 미세 피트들로부터 반사되는 빛의 강도에 의해 검색 (0과 1 구분) 구조적 특징 : 전체 평면상에 하나의 트랙이 나선형으로 연결되어 있고, 이 트랙은 같은 크기의 섹터들로 분할 디스크는 분리된 다수의 동심원 트랙들로 구성 Computer Architecture
등선속도(Constant Linear Velocity, CLV) 액세스할 섹터의 위치에 따라 디스크의 회전 속도가 달라지는 방식 섹터의 위치에 상관없이 표면을 지나가는 헤드의 속도가 항상 일정 트랙전체의 저장 밀도가 균일 바깥쪽 트랙 부분의 저장 공간의 낭비가 없음 저장 방식 : 트랙을 따라 순차적으로 저장 액세스 방식 : 임의 액세스 방식 데이터가 저장된 섹터를 찾아가는 과정 헤드를 액세스할 섹터 근처의 영역으로 이동 회전 속도를 조정하여 섹터의 주소를 검사 미세 조정을 통하여 원하는 특정 섹터를 검색 데이터를 읽고 전송 Computer Architecture
등선속도를 이용하는 CD-ROM의 트랙과 섹터 Computer Architecture
CD-ROM의 예 트랙간 간격 : 1.6 미크론(micron: 1.6 × 10-6 미터) 전체 트랙 수 : 20,344 개 모두 하나의 나선형 트랙으로 연결되어 있으므로 트랙의 길이 = 평균 원둘레×나선형의 회전수 = 약 5.27 km CD-ROM의 등선속도 : 1.2 km/sec 전체 트랙의 검색 시간 : 4391 초(73.2 분) (음향 CD-ROM의 표준 최대 플레이 시간과 거의 동일) CD-ROM으로부터의 데이터 전송 속도 : 176 Kbytes/sec(1배속) CD-ROM의 저장 용량 : 774.57 Mbyte Computer Architecture
CD-ROM 데이터 블록의 형식 데이터 블록의 형식 SYNC 필드 : 블록의 시작 표시 ID 필드 :블록 주소와 모드(mode) 바이트 포함 데이터 필드 : 2048 바이트 ECC 필드 : 오류 정정 코드(288 바이트) Computer Architecture
CD-ROM의 장단점 자기 디스크와 비교한 상대적 장점 단점 대용량 저렴한 가격으로 대량 복제 가능 [비교] 자기 디스크의 경우에는 두 개의 디스크 드라이브들을 사용하여 한 번에 한 개씩만 복사 가능 단점 읽기만 가능하고, 내용 변경 불가능 액세스 시간이 자기 디스크 보다 훨씬 길다 (대략 0.5 초 정도) Computer Architecture
CD-R(CD-Recordable) CD-R (CD-Recordable) WORM(Write-Once Read-Many) CD 라고도 부름 사용자가 데이터를 한 번은 기록할 수 있는 CD-ROM CD-R의 디스크 표면 트랙에 해당하는 부분을 따라, 열을 가하면 태워져 없어지는 성질을 가진 물질을 이용하여 유기 광전도성 염료층(organic photoconductive dye layer)으로 구성 염료층에서 한 번 태워진 부분은 복구 불가능 한번의 기록만 가능 Computer Architecture
CD-R에서의 데이터 쓰기 / 읽기 과정 데이터 쓰기 : 저장될 데이터(1 혹은 0)에 따라 레이저로 열을 발생시켜 염료층의 해당 피트(pit)부분들을 융해 데이터 읽기 : 강도가 낮은 레이저 빛을 이용하여 반사 명암에 따라 데이터 검출 Computer Architecture
CD-R 표면의 구조 (1) Lead Out Program Area Lead In PMA PCA Hole Computer Architecture
CD-R 표면의 구조 (2) PCA(Power Calibration Area) 디스크 전체에 대한 기록을 시작하기 전에 해당디스크에 가장 적절한 레이저 강도를 찾아내기 위하여 시험적으로 쓰기를 해보는 부분 PMA(Programmable Memory Area) 기록 동작이 진행되는 동안에 저장되는 데이터들에 대한 각종 정보의 집합인 TOC(Table Of Contents)를 임시로 저장해두는 부분 기록이 모두 종료된 후에는 그 내용을 Lead In 영역으로 이동 영구 저장 Program Area : 실제 데이터가 저장되는 영역 Lead Out : 데이터의 끝을 알리는 영역 (Prog. Area 영역 내의 데이터 끝 지점에 위치) Computer Architecture
CD-RW (CD-ReWritable) 여러 번 쓰기가 가능한 컴팩트 디스크 일반적으로 1000번 정도 재기록 가능 기본적인 구조는 CD-R과 동일 기록층(recording later) 염료층으로 제조 상태 변화(phase change)를 통하여 정보의 반복 저장이 가능한 물질로 구성 silver, indium, antimony, tellurium의 혼합물 가열하면 액체 변환 결정 상태(crystal phase) : 입사 되는 빛에 대하여 일정한 각도로 반사 가열 후 서서히 냉각 원자들이 규칙적으로 배열 = ‘1’ 비정질 상태 (amorphous phase) : 입사 되는 빛에 대하여 불규칙 난반사 가열 후 급속 냉각 원자들이 무질서하게 배열 = ‘0’ Computer Architecture
DVD (Digital Video Disc) 디지털 다기능 디스크 (Digital Versatile Disc) DVD 원판의 모습은 CD와 동일 차이점 - 0.6mm 원판을 두 개 겹쳐져 있음 등선속도(CLV) 방식 이용 저장 용량 증가 속도 제어 복잡 Computer Architecture
DVD의 데이터 저장 방식 단층(single layer) 또는 복층(double layer) 양면(double side) : 재생 중에 뒤집어야 하는 불편 있음 Computer Architecture
CD-ROM과 DVD의 주요 특징 비교 Computer Architecture
자기-광 디스크 (Magneto-Optical Disk: MO) 자기 디스크의 자기 방식 + CD R/RW의 광학방식 디스크 : 고온에서만 극성이 바뀌는 물질로 코팅 저장 방법 : 레이저를 이용하여 작은 점을 가열하여 자화 데이터 읽기 자화 방향은 극성을 띤 레이저 광에 의해 검출 가능 자화 방향에 따라 회전 각도가 변경되기 때문에 극성 감지 주요 장점 CD-R/RW에 비해 디스크의 수명이 길다 쓰기 무제한 자력이나 온도에 대해서 안정적 저소음 드라이브 내에 냉각 팬 불필요 Computer Architecture