2023.07.22 - [분류 전체보기] - [혼공컴운] chapter.06 메모리와 캐시 메모리
07-1 다양한 보조기억장치
- 하드디스크(HDD: Hard Disk Drive)
: 자기적인 방식으로 데이터를 저장하는 보조기억장치. 자기 디스크(magnetic disk)의 일종.
- 플래터(platter): 동그란 원판. 하드디스크에서 실질적으로 데이터가 저장되는 공간.
- 스핀들(spindle): 플래터를 회전시키는 구성 요소. 스핀들이 플래터를 돌리는 속도는 RPM 으로 표현.
* RPM(Revolution Per Minute): 분당 회전수.
ex) RPM = 15,000 => 1분당 15,000 바퀴 회전
- 헤드(Head): 플래터를 대상으로 데이터를 읽고 쓰는 구성 요소. 디스크 암에 부착.
- 디스크 암(disk arm): 헤드를 원하는 위치로 이동시키는 부품.
- 플래터에 데이터 저장되는 방식
=> 트랙(track)과 섹터(sector) 단위로 데이터를 저장
- 트랙: 한 플래터를 동심원으로 나눈 공간.
- 섹터: 트랙에서 나누어진 단위. 하드 디스크의 가장 작은 전송 단위.
- 실린더(cylinder): 여러 겹의 플래터 상에서 같은 트랙이 위치한 곳을 모아 연결한 논리적 단위.
- 트랙간 갭: 트랙 사이의 간격. 트랙간의 자기장 간섭을 방지하기 위한 간격.
- 섹터간 갭: 섹터들을 구분하기 위한 간격.
- 하드 디스크가 저장된 데이터에 접근하는 시간
=> 탐색 시간 + 회전 지연 시간 + 전송 시간
- 탐색 시간(seek time): 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간.
- 회전 지연(rotational latency): 헤드가 있는 곳으로 플래터를 회전시키는 시간.
- 전송 시간(transfer time): 하드 디스크와 컴퓨터 간에 데이터를 전송하는 시간.
- 다중 헤드 디스크와 고정 헤드 디스크
- 단일 헤드 디스크(single-head disk): 플래터의 한 면당 헤드가 하나씩 달려있는 하드 디스크.
→ 헤드를 움직일 필요 X. 고정 헤드 디스크(fixed-head disk) 라고도 함. - 다중 헤드 디스크(multiple-head disk): 헤드가 트랙별로 여러 개 달려있는 하드 디스크.
→ 헤드를 데이터가 있는 곳 까지 이동 필요. 이동 헤드 디스크(movable-head disk) 라고도 함.
- 단일 헤드 디스크(single-head disk): 플래터의 한 면당 헤드가 하나씩 달려있는 하드 디스크.
- 플래시 메모리(flash memory)
: 전기적으로 데이터를 읽고 쓸 수 있는 반도체 기반의 저장 장치.
ex) USB, SD카드, SSD 등
- 셀(cell): 플래시 메모리에서 데이터를 저장하는 가장 작은 단위.
- 페이지(page): 셀들이 모여 만들어진 단위. 플래시 메모리에서 읽기와 쓰기에서 사용되는 단위.
- 블록(block): 페이지들이 모여 만들어진 단위. 플래시 메모리에서 삭제에서 사용되는 단위.
- 플레인(plane): 블록이 모여 만들어진 단위.
- 다이(die): 플레인이 모여 만들어진 단위.
* 플래시 메모리는 읽기/쓰기와 삭제 단위가 다름.
< 내부 회로 구성방식에 따른 플래시 구분 >
- NOR형 플래시: 트랜지스터들이 병렬로 접속된 형태. 어느 한 트랜지스터에 저장된 값만 '1' 이어도 비트 선의 전압은 0V가 되는 NOR 게이트와 같이 동작하는 플래시 메모리.
- NAND형 플래시: 모든 트랜지스터들이 직렬로 접속된 형태. 읽고자 하는 트랜지스터에 저장된 값이 '0' 일 경우에 직렬로 접속된 다른 트랜지스터들과는 상관없이 비트 선의 전압은 논리적으로 1이 되는 NAND 게이트와 같이 동작하는 플래시 메모리.
< 셀 당 저장하는 비트 수에 따른 플래시 구분 > - SLC(single-level cell): 한 셀당 한 비트씩 저장하는 셀.
→ 0 또는 1 저장 가능. - MLC(multiple-level cell): 한 셀에 2비트씩 저장할 수 있는 셀.
→ 00, 01, 10, 11 총 4 가지 저장 가능. - TLC(triple-level cell): 한 셀에 3비트씩 저장할 수 있는 셀.
→ 000, 001, 010, 011, 100, 101, 110, 111 총 8 가지 저장 가능.
- 플래시 작동 과정
< 페이지가 가질 수 있는 상태 >
1. Free 상태: 새로운 데이터를 저장할 수 있는 상태.
2. Valid 상태: 이미 유효한 데이터를 저장하고 있는 상태.
3. Invalid 상태: 유효하지 않은 값(쓰레기 값)을 가지고 있는 상태.
* 플래시는 덮어쓰기가 불가능하여 Vaild 상태의 페이지에는 저장할 수 없음.
< 플래시 작동 예시 ①: 새로운 데이터 저장>
→ A와 B가 저장되어 있는 페이지는 Valid 상태. Free 상태인 페이지에 데이터 C 저장.
< 플래시 작동 예시 ②: 가비지 콜렉터 >
→ Vaild 페이지만 새로운 블록으로 복사한 후 기존의 블록 전체를 삭제하는 과정.
플래시 메모리의 읽기/쓰기 단위는 페이지, 삭제 단위는 블록인 특성으로 인한 과정.
07-2 RAID의 정의와 종류
- RAID(Redundant Array or Independent Disks)
: 다수의 작은 디스크들을 배열로 연결하여 용량, 신뢰성을 높인 대용량 디스크 시스템. - RAID-0: 여러 개의 디스크에 데이터를 분산하여 저장하는 방식.
→ 구성된 하드 디스크 중 1개라도 문제가 생기면 다른 하드 디스크의 정보를 읽는데 문제가 발생하는 구조.
- RAID-1: 데이터를 두 개의 디스크들에 중복 저장하여 RAID-0 의 단점을 보완한 방식.
- 거울처럼 완벽한 복사본을 만드는 구성으로 디스크 미러링(disk mirroring)방식 이라고도 함.
→ 미러 디스크가 존재하기 때문에 복구가 매우 쉬움. 하지만 많은 양의 하드 디스크가 필요하다는 단점 존재.
- RAID-4: 오류를 검출하고 복구하기 위한 정보를 저장하는 디스크를 추가한 방식.
- 패리티 디스크(parrity disk): 패리티 비트가 저장되어 있는 디스크
- 패리티 비트(parrity bit): 오류를 검출하고 복구하기 위한 정보
→ 적은 하드 디스크로 데이터를 안전하게 보관할 수 있는 방식. 패리티 디스크를 통해서 오류 검출과 복구가 가능하다.
하지만 새로운 데이터를 저장할 때마다 패리티 디스크에 접근함으로 병목현상 발생.
- RAID-5: 패리티 정보를 분산하여 저장하는 방식으로 병목현상을 해소한 방식.
→ 패리티 비트를 여러 디스크에 분산배치 하여 병목현상을 해소함.
- RAID-6: 서로 다른 두 개의 패리티를 배치하여 데이터의 신뢰성을 높인 방식.
→ 패리티가 각 데이터마다 2개씩 존재하여 데이터의 신뢰성이 높음. 하지만 데이터를 저장할 때 각 패리티에 접근해야 함으로 쓰기 속도가 저하됨.
* RAID-2와 RAID-3은 현재 잘 활용되지 않음.
* 오류 지적은 환영입니다.^^ *
'컴퓨터 공학 > 컴퓨터 구조' 카테고리의 다른 글
[혼공컴운] chapter.06~08 확인문제 (0) | 2023.07.23 |
---|---|
[혼공컴운] chapter.08 입출력장치 (0) | 2023.07.23 |
[혼공컴운] chapter.06 메모리와 캐시 메모리 (0) | 2023.07.22 |
[혼공컴운] chapter.04~05 확인문제 (0) | 2023.07.16 |
[혼공컴운] chapter.05 CPU 성능 향상 기법 (0) | 2023.07.16 |