컴퓨터의 핵식 부품에는 CPU, 메모리, 보조기억장치, 입출력장치가 있다.
메모리에 더 알아보자
주기억장치(메인메모리)는 종류에는 크게 RAM과 ROM 두가지가 있고 메모리라는 용어는 그 중 RAM을 지칭하는 경우가 많다.
휘발성 저장 장치(Volatile Memory)
RAM(Random Access Memory)는 주로 컴퓨터에서 실행 중인 프로그램 및 작업에 필요한 데이터를 일시적으로 저장하는데 사용된다. RAM은 전원이 켜져 있는 동안에만 데이터를 보유하며 전원이 꺼지면 저장된 내용이 사라진다.
특성
1 ) 실행 중인 운영 체제 및 응용 프로그램이 RAM에 로드되어 빠른 액세스를 허용한다. 데이터를 임시로 저장하여 CPU가 빠르게 읽고 쓸 수 있도록 도와준다.
2) 전원이 꺼지면 RAM에 저장된 모든 데이터가 사라지므로 주기적으로 저장된 데이터를 보존하는데 한계가 있다. 따라서 일반적으로 주기적으로 디스크 또는 다른 비휘발성 저장 매체로 데이터를 저장해야 한다.
비휘발성 저장 장치(Non-volatile Memory)
보조기억장치는 컴퓨터의 비휘발성 저장 장치로서 주로 데이터의 장기 보존 및 저장을 담당한다. 보조기억장치에 저장된 데이터는 전원 꺼져도 유지되므로 컴퓨터를 다시 켤 때에도 데이터가 그대로 유지된다.
특성
1) 데이터의 장기 보존과 컴퓨터의 부팅에 필요한 운영 체제 및 응용 프로그램이 저장된다. 데이터의 비휘발성 특성으로 전원이 꺼져도 정보를 보존한다.
2) CPU는 직접적으로 보조기억장치에 접근하지 않고 필요한 데이터나 프로그램은 RAM으로 복사하여 사용한다. 만약 필요한 데이터가 RAM에 없을 경우 보조 기억장치에서 RAM으로 데이터를 로드한 후 CPU가 작업을 수행한다.
RAM의 용량과 성능
RAM의 용량과 컴퓨터 성능에 어떤 영향을 미칠까?
CPU가 실행하고 싶은 프로그램이 보조기억장치에 있다면 이를 RAM으로 가져와야할텐데 RAM용량이 적다면 보조기억장치에서 실행할 프로그램을 가져오는 일이 잦아 실행시간이 길어진다. 그러므로 용량이 큰 RAM인 경우 여러 프로그램이나 작업을 동시에 실행하는데 도움을 준다. 여러 응용프로그램이 동시에 실행될 때 각 프로그램은 RAM에 로드되어 빠르게 액세스할 수 있게 된다.
예시(책상 - RAM, 책장 - 보조기억장치 )
CPU가 실행할 프로그램을 책에 빗대어 생각해보면 보조기억장치는 책장과 같고 RAM은 책을 읽을 수 있는 책상이다. 책상이 크다면 책장으로부터 많은 책을 미리 책상으로 가져와서 여러권을 동시에 읽을 수 있기 때문에 책을 가지러 왔다 갔다 하는 간을 절약할 수 있다.
그럼 RAM용량에 따라 프로그램 실행속도는 그에 비례해야 빨라질까?
그렇지 않다. RAM용량이 커지면 프로그램 실행 속도가 어느정도 증가하는 것 맞지만 용량이 필요 이상으로 켜졌을때 속도가 그에 비례하여 증가하지 않다. 책상의 크기는 일정한 수준을 넘어가면 읽기 속도에 큰 영향을 끼치지 않게 된다.
RAM의 종류
01 DRAM(Dynamic RAM)
저장된 데이터가 동적으로 사라지는 RAM의미이다. 시간이 지나면 저장된 데이터가 사라진다. 그렇기에 DRAM은 데이터의 소멸을 막기 위해 일정 주기로 데이터를 다시 저장해야 한다.
이런 단점에도 불구하고 우리가 일반적으로 메모리로써 사용하는 RAM은 DRAM이다. 소비 전력이 낮고 저렴하고 집적도가 높아 대용량으로 설계하기 용이하기 때문이다.
02 SRAM(Static RAM)
저장된 데이터가 사라지지 않는 RAM이다. DRAM보다 일반적으로 더 빠르다.
(시간이 지나도 저장된 데이터가 사라지지 않는다고 해서 SRAM이 비휘발성 메모리인 것은 아니다. SRAM도 전원이 공급되지 않으면 저장된 내용이 날아간다)
하지만 이러한 장점에도 불구하고 메모리로 사용되는 RAM은 일반적으로 SRAM이 아닌 DRAM이다. SRAM은 DRAM보다 집적도가 낮고, 소비 전력도 크며, 가격도 더 비싸기 때문이다. 그래서 SRAM은 메모리가 아닌 대용량으로 만들어질 필요는 없지만 속도가 빨라야하는 장치 캐시 메모리에 사용된다.
DRAM vs SRAM
03 SDRAM(Synchronous Dynamic RAM)
클럭 신호와 동기화된 DRAM 발전된 형태의 DRAM이다. 클럭 신호와 동기화되었다는 말은 클럭 타이밍에 맞춰 CPU와 정보를 주고 받을 수 있다.
즉 클럭에 맞춰 동작하며 클럭마다 CPU와 정보를 주고 받을 수 있는 DRAM이다.
04 DDR SDRAM(Double Data Rate SDRAM)
최근 흔히 사용하는 RAM이다. 대역폭을 넓혀 속도를 빠르게 만든 SDRAM이다.
대역폭(data rate)란? 데이터를 주고 받는 길의 너비를 의미한다.
대역폭를 자동차 도로로 비교해보면 한 클럭에 하나씩 정보를 주고 받을 수 있는 SDRAM과 비교했을때 DDR SDRAM은 너비가 두 배인 도로와 같다. 즉 한 클럭에 한 번씩 CPU와 데이터를 주고 받을 수 있는 SDREAM에 비해 DDRSDRAM은 두 배의 대역폭으로 한 클럭당 두 번씩 CPU와 데이터를 주고 받을 수 있다. 그러므로 전송 속도가 두 배 가량 빠르다.
참고 : 본 내용은개발자를 위한 컴퓨터공학 1: 혼자 공부하는 컴퓨터구조 + 운영체제강의를 수강하여 작성하였습니다. https://www.inflearn.com/course/%ED%98%BC%EC%9E%90-%EA%B3%B5%EB%B6%80%ED%95%98%EB%8A%94-%EC%BB%B4%ED%93%A8%ED%84%B0%EA%B5%AC%EC%A1%B0-%EC%9A%B4%EC%98%81%EC%B2%B4%EC%A0%9C/dashboard
'책 > 혼공 컴퓨터구조+운영체제' 카테고리의 다른 글
컴퓨터 구조 - 저장 장치 계층구조, 캐시 메모리, 캐시 적중률, 참조 지역성의 원리(시간지역성,공간지역성) (1) | 2023.12.05 |
---|---|
컴퓨터 구조 - 논리주소와 물리주소, MMU, 베이스 레지스터 및 한계 레지스터 (1) | 2023.12.02 |
컴퓨터 구조 - ISA, CISC, RISC (0) | 2023.11.29 |
컴퓨터 구조 - 명령어 파이프라인, 슈퍼 스칼라, 비순차적 명령어 처리 기법 (0) | 2023.11.29 |
컴퓨터 구조 - 클럭, 코어와 멀티코어, 스레드와 멀티스레드 (0) | 2023.11.24 |
댓글