[CS50 x Edwith]Topic2: 컴퓨터는 수 많은 정보를 어떻게 기억할까요?

Yewon Jeong·2023년 6월 16일
0

CS 스터디

목록 보기
7/19

핵심 개념

  • 기억장치
  • RAM
  • 캐시
  • 가상 기억장치

기억장치

컴퓨터가 계산을 수행하기 위해서는 비트와 바이트의 형태로 기억장치에 저장할 수 있어야 한다. 컴퓨터가 나중에 데이터를 검색할 수 있도록 보관을 하는 것이다. 하지만 기억장치는 종류마다 서로 다른 속도를 내고 내부에 저장할 수 있는 양에 차이가 있어, 서로 다른 장단점을 가지고 있다.

CPU 캐시, 하드디스크, RAM

CPU는 용량이 매우 큰 파일이나 데이터를 처리해야 하지만, 한번에 32 또는 64bit의 블록 단위로 굉장히 적은 양의 데이터를 조작하고 계산한다.(1MB 정도로 용량이 굉장히 작음.) 하지만 중앙처리장치는 이러한 비트들을 굉장히 빠른 속도로 처리할 수 있다.

이와 정 반대로 하드디스크(영구적, 비휘발성)는 CPU보다 훨씬 많은 양의 데이터를 저장할 수 있다. 근래의 하드디스크는 기가바이트나 테라바이트 단위의 데이터를 저장할 수 있다. 하드디스크는 엄청나게 많은 양의 데이터를 기억장치에 저장할 수는 있찌만, 데이터를 읽고 쓰는데에 많은 시간이 소요된다.

이 중간에 있는 것이 임의 접근 기억장치, 즉 RAM(비영구적,휘발성)(비싸고, 큰 용량을 담을 수 없다.)이다. RAM은 하드디스크 보다 훨씬 빠르게 데이터를 읽고 쓸수 있어서, 실행중인 프로그램이나 열려있는 파일들이 더 빨리 접근될 수 있도록 메모리를 저장하는 데에 쓰인다. RAM이 크면 더 많은 일을 동시에 할 수 있다. => (컴퓨터 살 때 RAM 크기를 따지는게 제일 좋은 투자일지도?)

L1, L2, L3 캐시

RAM보다 더 빠르게 정보를 읽고 쓰는 더 작은 단위의 기억장치들도 있지만, 결과적으로 기억장치 용량이 더 작습니다. 바로 L1,L2,L3 캐시가 그것인데, L1 캐시가 이 셋 중에서 가장 작고 빠르며, 중앙처리장치가 재빨리 받아 처리할 수 있도록 몇 킬로바이트의 데이터만을 저장한다. L2 캐시는 L1 캐시보다 조금 크지만, 그만큼 더 느리다. L3 캐시는 보통 몇 메가바이트를 저장할 수 있어 셋 중 가장 크지만 가장 느리다. 그래도 L3캐시는 RAM보다는 빠르다.

타협점

일반적으로, 기억장치의 타협점은 용량과 속도에서 찾는다. 속도가 빠른 기억장치는 용량이 작은 경향이 있다. 그리고 속도가 빠른 기억장치는 각 용량의 단위의 가격이 더 비싸다. 예를 들면, RAM의 1GB 가격이 하드디스크 1GB 가격보다 비싸다.

우리가 컴퓨터에서 여러 프로그램을 실행하기 위해서는 운영체제와 프로그램이 동시에 실행시켜야 하는데 이때 RAM을 사용한다. 너무 많은 공간의 RAM이 사용되면, 근래의 운영체제는 가상 기억장치(가상메모리)라는 것을 써서 일시적으로 데이터를 RAM에서 하드디스크로 옮기고, 사용자가 필요로 할 때 다시 정보를 불러온다.

참고
https://www.edwith.org/cs50/lecture/22801?isDesc=false

profile
일단 하는 중

0개의 댓글