Layer7 과제

HDD, SSD, ROM, RAM

kms0204 2022. 6. 8. 11:12

기억장치에 데이터를 읽고 쓰는 방식은 4가지로 나뉜다.

순차 접근, 직접 접근, 임의 접근, 연관 접근이 있다.

그 중에서 순차 접근과 임의 접근을 알아야 한다.

 

순차 접근이란 원하는 데이터가 나올 때까지 순차적으로 위치를 이동하는 방식이고,

임의 접근이란 임의로 원하는 위치로 이동하는 방식이다.(모든 저장장소들이 고유한 위치를 갖는다.)

 

순차 접근의 예시로는 hdd가 있고 rom, ram, ssd는 임의 접근 방식을 채택하고 있다.

 

 

HDD: 보조기억장치, 비휘발성 메모리

 자기장을 이용해서 데이터를 기록하는 장치이며 디스크(플래터)가 회전하면서 데이터를 읽고, 쓴다. 

알루미늄 원판(디스크)에 데이터가 저장된다. 플래터라고 하고, 여러 장으로 구성되어 있으며 양면을 모두 사용한다.

이는 트랙과 섹터로 나뉜다. 섹터는 디스크의 최소 저장공간이고 256, 512 bytes의 크기를 가진다. 각각 고유번호가

존재해서 이를 통해서 구분한다. (0번째 섹터에는 부트 섹터라 불리는 부팅시 필요한 중요한 데이터가 저장되어 있다.)

R/W Head가 자성을 이용해서 플래터에 닿지 않고 데이터를 읽고 쓴다. 기술의 발전으로 점점 헤드와 플래터의 간격이 

좁아지면서 성능이 올라갔다. 단, 플래터와 헤드가 충돌하면 데이터가 손실되므로 HDD에 작은 충격이라도 가하면

망가질 수 있다. 또 자성을 이용하므로 주변에 자석을 두면 망가진다.

요즘은 외력이 발생하면 디스크의 일부 동작을 중지하는 충격 보호 방법 등이 사용되면서 안전성을 높이고 있다.

필요한 데이터가 여러 섹터에 흩어져 있으면 속도가 낮아지므로 이를 극복하기 위해 섹터에 조각조각 흩어져 있는

데이터를 모아 놓는 조각 모음이 필요하다.

 

Actuator는 헤드가 트랙의 정확한 위치를 짚을 수 있도록 도와주는 역할을 한다.

[요약] 헤드가 자기를 이용해서 플래터 면의 미세한 그것을 0,1로 뒤바꾸며 데이터를 저장한다.

 

Spindle은 플래터가 회전할 수 있도록 하는 축이다.

 

데이터를 읽는 과정에서 디스크가 회전하므로 소음이 발생하고 발열이 생긴다. ssd보다 느리다.

데이터를 순차적으로 읽는다.

 

방대한 양의 데이터를 저장하기 위해 사용된다.

 

 

SSD: 보조기억장치, 비휘발성 메모리

컴퓨터에 연결할 수 있는 SATA 포트, 데이터가 저장되는 (NAND)플래시 메모리, 인터페이스와 메모리 사이의 데이터 교환을 담당하는 컨트롤러, 처리 속도 향상을 위한 버퍼 메모리로 구성된다.

작동방식: 컨트롤러가 플래시 메모리에 어디에 저장할지 결정하고, 플래시 메모리의 물리적인 주소를 

 

저장방식: hdd와 다르게 반도체를 이용해서 전기적 원리를 이용해서 저장한다.

ssd는 셀(cell)이라고 하는 1bit 기본단위인 작은 실리콘형태의 조각들로 구성되어 있는데, 컨트롤러가 셀에 데이터를 저장할 때 전압을 가해서 전기장을 발생시키고 0, 1로 데이터를 저장하는 것이다. 

기본단위인 셀이 모인 것을 페이지(4kbytes)라고 하며 페이지가 모인 것을 블록(128K~1M)이다. 

HDD와 비교하면 페이지는 섹터에 해당되고, 트렉은 블록에 해당한다고 볼 수 있다.

데이터를 읽고 쓸 때 최소 페이지보다 작은 단위로는 할 수 없으므로 실질적인 단위는 페이지이다.

저장방식은 SLC, MLC, TLC로 구분된다.

셀들에 0,1을 저장하는 방식이 SLC이고, 한 셀에 2bit 정보를 저장하는 것이 MLC이고, 3bit 정보를 저장하는 것이 TLC다.

MLC와 TLC는 하나의 셀에 1bit 이상의 데이터를 저장하는 방식이고, 한 셀에 많은 데이터를 넣다보니

수명이 짧아지고, 데이터가 압축되어서 저장되다보니 찾기 위한 시간이 더 많이 들어가서 읽고 쓰는 시간이 길어진다.

곧 안전성과 속도가 떨어진다는 뜻인데, 굳이 쓰는 이유는 가격 때문이다.

소음이 적고 발열이 적으며 hdd보다 빠르지만, hdd에 비해 저장할 수 있는 데이터의 양이 적다.

hdd의 느린 속도를 극복하기 위해서 사용된다.

 

 

 

ROM: 주기억장치, 비휘발성 메모리

일반적으로 데이터를 한 번 기록하면 바꿀 수 없는 장치이다.

이런 특성을 이용해서 변경될 가능성이 없는 프로그램을 저장하는 목적으로 주로 쓰인다.

(ex.기본 입출력 시스템(바이오스) 등)

mask rom, prom, eprom, eeprom으로 나뉜다.

 

mask rom: 처음 제조할 때 이온을 넣어서 데이터 수정이 불가능하도록 설계된 장치이다.

bit 선에 전기를 흘려보냈을 때 전기가 통하면 1, 통하지 않으면 0으로 해석한다.

 

prom: 이온 대신에 퓨즈를 사용했다. 또 최초 1번은 내용 변경이 가능하다.

퓨즈가 연결되어 있으면 전기가 흐르므로 1, 끊어져 있으면 전기가 흐르지 않으므로 0으로 인식한다.

eprom: 20분 정도 자외선을 쐬어서 기록된 내용 전체를 지우고 다시 쓸 수 있는 장치이다. 여러번 가능하다.

미완성 프로그램 저장 목적으로 주로 사용된다.

 

eeprom: 전류를 이용해서 기록된 내용을 지우고, 다시 쓸 수 있는 장치이다. 지우고 쓰는 속도가 느리고,

수만번 정도 가능하다.

+(eeprom을 더 발전시킨 것이 flash memory이다. 작고 가벼우며 외부 힘으로부터 강하다. 읽기 쓰기 속도가 느리며
임의 접근 방식을 사용하므로 검색 속도가 빠르다. 블록 단위로 지우고 쓸 수 있다. 소재의 한계로 인한 지우고 쓰는 

횟수의 한계가 생긴다. NAND, NOR 게이트로 구분된다.)

 

 

RAM: 주기억장치, 휘발성 메모리

임의 접근 기억장치이므로 데이터를 읽는 속도가 항상 일정하고, 빠르다.

cpu의 처리 속도를 높이기 위해 계산할 데이터를 예측해서 미리 저장하는 용도로 사용된다.

크게 sram과 dram으로 나뉜다.

 

sram: static ram

플리플롭으로 작동하는 램이다. 플리플롭이란 1bit를 기억하는 소자(전자장치)이다. 플리플롭은 전류가 오기 전까지

상태가 변하지 않으므로, sram은 가만히 두어도 내용이 소멸되거나 변하지 않는 안정적인 메모리이다.

단, 휘발성 메모리이므로 전원을 끄면 모든 내용이 소멸된다.

 

 

dram: dynamic ram

커패시터(축전기 = 콘덴서)로 작동하는 램이다. 콘덴서는 일정량의 전기를 저장하고 이를 다시 방출하는, 전하를 저장하는 장치이다. 콘덴서의 특징은 시간이 지나면 스스로 방전된다는 것이다. 따라서 시간이 지나면 자연적으로 메모리가

변화한다는 것이다. 그래서 이를 방지하기 위해 추가로 refresh 회로가 달려있는데, 이를 이용해서 주기적으로 

refresh 신호를 보내서 방전되는 것을 막는다.

 

dram은 방전을 막기위한 조취를 계속하므로 sram에 비해 속도가 느리다.

따라서 속도가 빠른 sram은 cache memory로 사용된다. 대신 dram은 용량이 크기 때문에 대형 컴퓨터에 저장 용도로 

쓰이고, sram은 임베디드 시스템에 사용되며 일반적인 data, 변수, stack 저장용으로 사용된다.