주기억장치와 대용량저장장치

Dahea Moon·2020년 2월 13일
0

CS 공부 개념 정리

목록 보기
3/4

주기억장치(mainmemory): 데이터 저장을 위해 컴퓨터가 가지고 있는 비트 저장소

메모리 구성

주기억장치는 셀(cell)이라 불리는 관리하기 쉬운 단위로 조직되는데, 이는 대개 한 바이트(byte)의 용량이다. 한 바이트는 8비트이다.

컴퓨터 안에서 좌우 구분은 없지만, 메모리 셀 안의 비트들이 한 줄에 배열되어 있다고 간주한다. 이 줄의 왼쪽 끝을 상단(high-order end), 오른쪽 끝을 하단(low-order end)라고 한다. 셀의 내용이 숫자를 나타낼 경우, 가장 왼쪽 비트를 상위 비트 또는 최상위 비트라고 부른다.

각 셀에는 고유한 주소가 지정된다. 모든 셀들이 한 줄로 배열되어 있고, 그 순서대로 0에서 시작되는 번호가 부여되는 것으로 간주한다. 따라서 컴퓨터 주기억장치 안의 모든 비트들이 길게 일렬로 배열되어 있는 것으로 생각할 수 있다.

실제 비트들을 저장하는 회로는 메모리 셀에 데이터를 저장하거나 메모리 셀에서 데이터를 읽어내기 위해 필요한 회로들과 결합되어 있다. 다른 회로들에서 특정 주소의 내용을 전자적으로 요청함으로써 읽기연산을 할 수 있고, 특정 주소에 위치한 셀 안에 특정 비트 패턴을 저장하도록 요청함으로써 쓰기 연산을 할 수 있다. 주소를 가진 개별 셀들에 필요하면 독립적으로 접근할 수 있다.

주기억장치는 흔히 RAM(Random Access Memory, 임의 접근 메모리) 라고 한다. 임의의 순서로 셀들에 접근할 수 있기 때문이다.

현대에는 플립플롭이 아니라 훨씬 작고 빠른 다른 기술들을 사용하여 RAM을 만든다. 이러한 장치들은 1초 동안 반복적으로 전하를 복원하는 재생회로(refresh circuit)을 추가 회로로 가지고 있다. 이러한 휘발성(volatility)을 반영하여 동적메모리(dynamic memory)라고도 부르며, DRAM(Dynamic RAM)이라고 한다. 메모리 셀을 읽는 시간을 단축시킨 SDRAM(Synchronous DRAM)도 있다.

메모리 용량의 측정

킬로바이트(KB)는 1024(2^10)바이트로, 초창기의 메모리 단위이다. 메모리가 커지면서 메가바이트(MB), 기가바이트(GB), 테라바이트(TB) 등의 단위를 쓰고 있다.


주기억장치의 휘발성과 제한된 크기 등으로 인해 대부분의 컴퓨터는 보조기억장치라고 불리는 대용량 저장장치(mass storage) 를 별도로 가지고 있다. 이러한 장치에는 자기디스크, 플래시 드라이브, SSD 등이 포함된다.

대용량 저장장치는 낮은 휘발성, 큰 저장용량, 적은 비용 등의 이점을 갖고 있으며, 대부분 컴퓨터에서 분리하여 보관할 수 있다. 데이터 읽기 및 쓰기 연산 시에 전자적 동작을 하는 주기억장치와 다르게 기계적 동작을 하기 때문에 많은 시간을 소비한다.

자기 장치

가장 보편적인 자기 장치의 예는 데이터 저장에 자기 코팅을 입힌 얇은 회전 디스크가 사용되는 자기 디스크(magnetic disk)인 하드디스크(HDD; hard disk drive)이다.

읽기/쓰기 헤드들이 디스크가 회전함에 따라 트랙을 형성하고, 헤드가 이동하여 서로 다른 동심원 트랙에 접근할 수 있다. 여러 개의 디스크가 하나의 축에 올려져서 하나의 디스크 저장장치를 형성하며, 디스크 판들 사이에는 헤드가 이동할 만큼의 공간이 있다. 헤드들은 함께 움직이며, 이동할 때 새로운 실린더에 접근한다. 실린더는 서로 다른 디스크 면상의 같은 크기의 동심원 트랙들이 모여 이루어진다. 각 트랙은 연속된 비트 열을 수록하는 섹터라고 불리는 작은 원호들로 분할된다. 일반적인 디스크 저장장치에서 각 트랙 당 섹터 수는 일정하고, 모든 섹터는 같은 수의 비트들을 포함한다. 바깥쪽 트랙의 길이가 안쪽 트랙보다 길기 때문에, 디스크 바깥 쪽 트랙 상의 섹터는 중심에 가까운 트랙에 비해 저장 밀도가 낮다.

고용량 디스크 저장장치에서는 바깥쪽 트랙이 중심에 가까운 트랙보다 많은 수의 섹터를 포함할수 있으며, ZBR(zoned-bit recording)이 이러한 특징을 이용한다. 인접한 몇 개의 트랙을 모아 구역(zone)을 만든다. 같은 구역 안의 모든 트랙은 같은 갯수의 섹터를 가지고, 바깥 쪽 구역은 안쪽 구역에 비해 섹터 수가 많다.

디스크 장치 성능 측정

  1. 탐색시간(seek time) : 읽기/쓰기 헤드를 한 트랙에서 다른 트랙으로 이동시키는 데 필요한 시간

  2. 회전지연(rotational delay): 읽기/쓰기 헤드를 해당 트랙에 위치시킨 후 원하는 데이터가 회전하여 헤드 아래 오는데 걸리는 평균 시간

  3. 접근시간(access time): 탐색 시간과 회전 지연의 합

  4. 전송속도(transfer rate): 데이터를 디스크로 보내거나 디스크로부터 받아오는 속도

  5. 대용량 저장장치나 통신시스템에서는 단위 시간 동안 전송될 수 있는 총 비트수인 대역폭(bandwith)과 데이터 전송 요청과 수신 사이의 총 소요 시간인 대기시간(latency) 등이 있다.

디스크가 작동할려면 물리적 동작이 필요하므로, 전자회로에 비해 속도가 느리다. 전자회로는 지연시간이 나노(10^-9) 단위이고, 디스크 장치에서 탐색, 대기 등 시간은 밀리(10^-3) 단위로 측정된다.

플래시 드라이브

플래시 메모리: 휴대형 비휘발성 데이터 저장에 적합하다. 아주 작은 실리콘 다이옥사이드 방에 전자를 가두어 전자회로의 특성을 변경하는 방식을 사용한다. 잦은 데이터 삭제는 방을 손상시켜, 주기억장치용으로는 적합하지 않다. 물리적 충격에 민감하지 않아 휴대용 장비 분야에서 쓰인다.

플래시 드라이브: 용량이 수 TB인 플래시 메모리 장치. 연결 및 분리가 용이하여 휴대형 데이터 저장에 이상적이다. 취약한 내구성 때문에 광학 디스크에 비해 신뢰성이 떨어진다.

SSD(solid-state drive): 고용량 플래시 메모리 장치. 자기 하드디스크를 대체하기 위한 용도로 사용됨. 하드디스크에 비해 진동이나 물리적 충격에 강하며, 조용하고 데이터 접근 속도도 빠르다. 섹터의 수명이 가장 짧은 축에 속하는 단점이 있다.

profile
나를 위한 기록장

0개의 댓글