2023.09.06 컴퓨터구조
7.보조기억장치
7.1 다양한 보조기억장치
하드디스크 플래시메모리 등등
전원이 공급되지 않더라도 데이터를 저장하기 위한 장치이다.
가장 대표적인 hdd와 플래시메모리를 알아보자 ssd usb sd
7.1.1 하드디스크 구성
자기적인 방식으로 데이터 저장
자기디스크의 일정으로 부른다.
마치 LP판처럼 생겼는데
원판부분에 수많은 n극과 s극이 있는데 이것을 플래터라고 하고 여러겹으로 되어있다.
일반적으로 양면 모두 사용한다.
이것을 스핀들이라는 것으로 여러번 돌린다.
이 스핀들이 회전시키는데 이 단위가 RPM이다. 하드디스크볼때 자주 등장하니 알아둘필요가있다.
이 자기적인 물질로 이루어진 플래터에 읽고 쓰는 기능을 하는 것이 헤드이다.
모든 면마다 헤드가 붙어있다.
7.1.2 하드디스크 저장단위
하드디스크는 기본적으로 트랙과 섹터를 알아야한다.
이 단위로 저장된다.
트랙은 운동장의 트랙을 생각하면된다. 플래터를 이루는 동심원의 저장단위이다.
섹터는 이 트랙을 피자처럼 나누고 이 한조각을 섹터라고 한다.
하나의 섹터를 묶어 블록이라고 표현하기도 한다.
실린더는 여러개의 플래터상에서 같은 트랙이 위치한 곳을 모아 연결한 논리적인 단위이다.
보통의 연속된 정보는 한 실린더에 기록된다.
헤드는 디스크암에 부착되어 다같이 움직이기 때문에 한 실린더에 저장하면
헤드가 움직이지 않고 데이터를 읽어 낼 수 있기 때문에 속도가 빠르다.
7.1.3 하드디스크 데이터 접근과정
하드디스크가 저장된 데이터에 접근하는시간은 세종류로 나뉜다.
탐색시간
회전지연
전송시간
탐색시간은 접근하려는 데이터가 저장된 트랙까지 헤드를 이동시키는 시간이다.
회전지연시간은 헤드가 있는곳으로 플래터를 회전시키는 시간이다.
전송시간은 하드디스크와 컴퓨터 간에 데이터를 전송하는 시간이다.
이시간들이 별것 아닌것 같아도 생각보다 아주 크고 긴시간이라 중요한 시간단위이다.
7.1.4 플래시메모리
전기적으로 데이터를 읽고 쓰는 반도체 기반의 저장장치이다.
범용성이 넓기에 보조기억장치에 만 속한다고 보기는 어렵다.
실제로 주기억장치인 ROM도 플래시메모리를 사용하기도 한다.
SSD SD 등등이 여기에 포함된다.
종류
NAND 플래시메모리와 NOR플래시메모리가 있다.
오늘날 대부분 사용되는 것은 전자라 이를 배울 것이다.
7.1.4.1 셀(cell) 저장단위
플래시 메모리에서 데이터를 저장하는 가장작은단위 이셀이 모이고 모여 수 MB GB TB저장장치가 된다.
이 셀에 저장할수 있는 비트에 따라 1비트 SLC 2비트 MLC 3비트 TLC 4비트 QLC로 타입이 나누어진다.
셀을 집으로보고 사람한명을 1비트로 생각해보자
SLC는 한집에 한명 MLC는 한집에 두명 TLC는 한집에 세명이 살게된다.
SLC는
한셀로 두개의 정보를 표현한다.
비트의 빠른 입출력을 지원한다.
긴 수명을 가지고 있고 용량대비 고 가격이다.
MLC는
한셀로 2비트를 표현해서 4개의 정보를 표현할 수 있다. 따라서 대용량화에 유리하다.
SLC보다 느린 입출력
SLC보다 짧은 수명
SLC보다 저렴
시중에서 많이 사용된다.
TLC는
한셀로 3비트이니 8개의 정보를 표현할 수 있다.
MLC보다 느린입출력
MLC보다 짧은 수명
MLC보다 저렴
시중에서 많이 사용된다.
이를 통해 알 수 잇는점
같은 플래시 메모리라도 수명 가격 성능이 다르다.
같은 16기가짜리 여도 타입에 따라 달라질 수 있다는 것이다.
7.1.4.2 단위 - 2
셀들이 모여 페이지(page)
페이지들이 모여 블록(block)
블록이 모여 플레인(plane)
플레인이 모여 다이(die)가 된다.
플래시 메모리는 읽기쓰기 단위와 삭제 단위가 다르다.
읽기와 쓰기는 페이지 단위로 이루어진다.
삭제는 페이지보다 큰 블록단위로 이루어진다.
페이지의 상태
FREE상태 어떠한데이터도 저장하지 않아 새로운 데이터를 저장할 수 있는 상태
Valid 상태 이미 유효한 데이터를 저장하고 있는상태
Invalid 상태 유효하지 않은 데이터 쓰레기값을 저장하고 있는상태
플래시 메모리는 하드디스크와 달리 덮어쓰기가 불가능하다.
새롭게 저장된 C와 기존에 저장되어 있는 B는 그대로둔채 A만 A'로 수정하고싶다면?
삭제는 블록단위로 이루어지고 덮어쓰기가 불가능하기 때문에
ABC를 냅두고 새 페이지에 A'를 저장하게된다.
그럼 A는 쓰레기값이 되게된다.
이런것을 방지하기 위해 가비지 컬렉션이 있다.
1.유효한 페이지들(Valid)만을 새로운 블록으로 복사한다.
2.기존의 블록을 삭제한다.
2023.09.06
하드 뜯어본적있는데 면마다 헤드가 있다는 것은 처음 알게되엇다.
같은 SD카드 용량이어도 가격이 다른 것에 대해서 이해하게 되었다.
플래시메모리가 덮어쓰기가 안되고 삭제도 한블록씩 저장하게되니
새로운 것을 수정할때 가비지컬렉션이 작동한다는 점이 흥미롭다.