WEBVTT

00:00.120 --> 00:00.990
해설자 좋습니다 이번

00:00.990 --> 00:03.390
시간에는 무작위 접근 메모리에 대해 이야기하겠습니다

00:03.390 --> 00:05.760
시스템 내 메모리라고 불리는 것이죠 그리고 그 메모리를

00:05.760 --> 00:07.920
어떻게 다룰지 알아보겠습니다

00:07.920 --> 00:10.800
이제 먼저 메모리 주소를 지정하는 방법에 대해 이야기하기

00:10.800 --> 00:12.150
전에 메모리가 무엇인지,

00:12.150 --> 00:13.230
컴퓨터 시스템 내부에서

00:13.230 --> 00:16.200
메모리가 어떤 역할을 하는지 더 잘 이해해야 합니다.

00:16.200 --> 00:18.270
이전에 프로세서에 대해 이야기할

00:18.270 --> 00:20.190
때 프로세서가 모든 계산을 수행하지만

00:20.190 --> 00:21.960
해당 계산을 수행하기 전에 데이터와

00:21.960 --> 00:27.210
명령을 저장할 장소가 있어야 한다는 사실에 대해 이야기했습니다.

00:27.210 --> 00:28.800
프로세서 내부에는

00:28.800 --> 00:30.720
캐시라고 하는 고속 메모리가

00:30.720 --> 00:32.310
있습니다

00:32.310 --> 00:34.650
공간은 아주 작지만 작업은

00:34.650 --> 00:36.780
아주 빨라요

00:36.780 --> 00:38.730
이제 캐시 공간이 부족해지면

00:38.730 --> 00:40.890
시스템에 있는 다음 유형의 메모리는

00:40.890 --> 00:42.900
랜덤 액세스 메모리, 즉 시스템

00:42.900 --> 00:44.640
메모리입니다.

00:44.640 --> 00:46.470
이 메모리는 여전히 빠르지만

00:46.470 --> 00:49.380
캐시 메모리만큼은 아닙니다

00:49.380 --> 00:51.300
이제 결국 일어나는 일은 프로세서가

00:51.300 --> 00:53.370
캐시 메모리를 먼저 사용하고 해당 캐시

00:53.370 --> 00:55.860
메모리의 데이터를 사용함에 따라 새로운 정보가

00:55.860 --> 00:59.160
시스템 메모리에서 캐시로 이동한다는 것입니다.

00:59.160 --> 01:01.710
그리고 이를 파이프라인 프로세스로 계속

01:01.710 --> 01:03.780
이동시켜 시스템 메모리에서 캐시로

01:03.780 --> 01:05.700
이동한 다음 cpu를 사용하여

01:05.700 --> 01:07.470
처리하고 실행합니다.

01:07.470 --> 01:09.270
이 시스템 메모리에 덧붙여

01:09.270 --> 01:11.340
저장소라는 것도 있습니다

01:11.340 --> 01:13.680
하드 드라이브, usb,

01:13.680 --> 01:15.900
cd-롬 dvd 같은 걸

01:15.900 --> 01:17.190
저장해요

01:17.190 --> 01:18.990
네 이 대규모 저장 장치는

01:18.990 --> 01:21.030
메모리보다 데이터를 더

01:21.030 --> 01:22.320
많이 담을 수 있지만

01:22.320 --> 01:24.360
훨씬 느립니다

01:24.360 --> 01:27.690
네 따라서 제 시스템에 새 PowerPoint를 로드하려면

01:27.690 --> 01:29.520
하드 디스크에 저장해야 합니다

01:29.520 --> 01:31.410
대형 저장 장치죠

01:31.410 --> 01:32.430
내가 컴퓨터에 그것을

01:32.430 --> 01:33.600
읽고 싶다고 말하면 프로세서는

01:33.600 --> 01:35.580
하드 드라이브에 신호를 보내고 '그 데이터는

01:35.580 --> 01:36.600
어디에 있습니까?'라고

01:36.600 --> 01:38.610
말할 것입니다.

01:38.610 --> 01:40.830
그 데이터는 하드 드라이브에서 시스템

01:40.830 --> 01:42.120
메모리로 이동합니다

01:42.120 --> 01:43.470
그리고 시스템 메모리에서

01:43.470 --> 01:44.790
그 중 작은 조각을 캐시로

01:44.790 --> 01:46.410
가져온 다음 프로세서에서

01:46.410 --> 01:48.600
작업할 수 있습니다.

01:48.600 --> 01:50.160
여러분 시스템 안에서 이게

01:50.160 --> 01:51.960
다 같이 작용하는 거예요

01:51.960 --> 01:53.580
따라서 시스템에서 데이터가 저장되는

01:53.580 --> 01:55.080
다양한 위치에 대해 생각할 때 이

01:55.080 --> 01:56.850
점을 염두에 두시기 바랍니다.

01:56.850 --> 01:58.320
우리는 영구 저장 영역에 가까운

01:58.320 --> 02:00.390
대용량 저장 장치를 보유하고 있습니다.

02:00.390 --> 02:01.680
컴퓨터 전원을 꺼도 해당

02:01.680 --> 02:03.510
대용량 저장 장치의 데이터는 그대로

02:03.510 --> 02:04.830
유지됩니다.

02:04.830 --> 02:07.470
그리고 램, 혹은 시스템 메모리라는 임시

02:07.470 --> 02:09.750
저장 영역도 있습니다 이 영역은 지속성이

02:09.750 --> 02:10.680
없는 저장 공간으로

02:10.680 --> 02:12.960
여겨집니다 컴퓨터의 전원을 내리면

02:12.960 --> 02:14.580
램에 있는 모든 것을 잃기

02:14.580 --> 02:17.010
때문입니다

02:17.010 --> 02:19.140
따라서 우리는 다른 파일로 작업할

02:19.140 --> 02:21.810
때 해당 파일을 일시적으로 ram에 배치하여

02:21.810 --> 02:25.500
훨씬 더 빠른 방식으로 작업할 수 있습니다. 영구 저장

02:25.500 --> 02:27.240
장치인 하드 드라이브에 다시

02:27.240 --> 02:29.700
저장됩니다.

02:29.700 --> 02:31.110
네 그러면 시스템 메모리나

02:31.110 --> 02:32.610
램으로 알려진 임의 액세스

02:32.610 --> 02:33.600
메모리를 생각해

02:33.600 --> 02:36.330
봅시다 이것은 동적이고 지속적으로 변화하는

02:36.330 --> 02:37.950
영역으로 하드 드라이브나

02:37.950 --> 02:39.900
시디롬 같은 큰 저장 장치에 비해

02:39.900 --> 02:42.300
빠르게 동작합니다

02:42.300 --> 02:44.040
물리적 세계에서는 어떤 모습인지

02:44.040 --> 02:45.210
비유하기 위해 사무실을

02:45.210 --> 02:46.950
생각해 보세요

02:46.950 --> 02:48.690
네 사무실에는 책상이 있잖아요

02:48.690 --> 02:51.030
책상에는 공간이 한정돼 있어요 하지만

02:51.030 --> 02:52.650
책상 위에 뭔가 있으면 재빨리

02:52.650 --> 02:53.940
꺼낼 수 있죠 이미 탁 트인

02:53.940 --> 02:55.440
곳에 있고 손을 뻗어 만질

02:55.440 --> 02:57.180
수 있으니까요

02:57.180 --> 02:58.950
자 이제 책상 위에 펼쳐둔

02:58.950 --> 03:01.433
파일 서너 개 외에도 캐비닛에 수백

03:01.433 --> 03:02.520
개의 파일이 있을

03:02.520 --> 03:04.170
겁니다

03:04.170 --> 03:05.220
네 파일 캐비닛은

03:05.220 --> 03:06.570
하드 드라이브와 비슷합니다

03:06.570 --> 03:08.220
대량 저장 장치죠 데스크톱은

03:08.220 --> 03:10.560
램과 더 비슷하고요 , 네

03:10.560 --> 03:11.970
네 그래서 램에 있을

03:11.970 --> 03:13.110
때 더 쉽게, 더 빠르게

03:13.110 --> 03:13.950
접근할 수 있고

03:13.950 --> 03:16.350
그때 작업할 수 있죠

03:16.350 --> 03:17.550
네 다 끝나면 그 파일을

03:17.550 --> 03:19.530
접어서 캐비닛에 넣어두세요

03:19.530 --> 03:21.090
그래야 1주일 후, 2주

03:21.090 --> 03:22.950
후 1년 후에 필요할 때 거기

03:22.950 --> 03:24.720
있죠 그럼 데스크톱에 공간이

03:24.720 --> 03:29.400
더 생겨서 다른 파일을 꺼내 작업할 수 있어요

03:29.400 --> 03:31.080
램의 용도가 바로 그겁니다

03:31.080 --> 03:32.550
램은 일시적인 공간으로

03:32.550 --> 03:34.830
끊임없이 변화하고 진화합니다

03:34.830 --> 03:37.950
네 대량 저장 장치가 느리기 때문에 램에

03:37.950 --> 03:40.440
더 많은 걸 넣고 싶지만 램은 제한돼

03:40.440 --> 03:41.970
있어요

03:41.970 --> 03:43.380
하드 디스크를 보면 500기가바이트,

03:43.380 --> 03:45.120
1테라바이트 또는 4테라바이트의

03:45.120 --> 03:57.180
대용량 저장 장치가 있을 수 있지만 메모리를 보면 8기가바이트 또는 16기가바이트일 수 있습니다. 운이 좋다면 32gb의 공간도 확보할 수 있습니다.

03:57.180 --> 03:58.680
이는 하드 디스크보다 사용

03:58.680 --> 04:01.650
가능한 ram이 훨씬 적다는 것을 의미합니다.

04:01.650 --> 04:03.330
따라서 메모리가 하는 일은 디스크

04:03.330 --> 04:05.520
캐시 역할을 하는 것입니다.

04:05.520 --> 04:07.890
이런 방식으로 디스크에서 메모리로 파일을

04:07.890 --> 04:09.420
가져와서 작업한 다음 작업이

04:09.420 --> 04:10.440
끝나면 다시 대용량

04:10.440 --> 04:12.960
저장 장치로 교체할 수 있습니다.

04:12.960 --> 04:16.020
네 네 빠른 임시 저장

04:16.020 --> 04:18.780
공간으로 작용해

04:18.780 --> 04:19.980
작업을

04:19.980 --> 04:22.230
가속화하죠

04:22.230 --> 04:23.520
네 램은 데이터를

04:23.520 --> 04:25.800
정말 빨리 찾거든요 기존 하드

04:25.800 --> 04:26.760
디스크는 맞는

04:26.760 --> 04:27.990
부분을 찾을 때까지

04:27.990 --> 04:29.340
디스크를 회전시킨

04:29.340 --> 04:30.720
후 데이터를 빼내야

04:30.720 --> 04:34.110
하는데 이건 훨씬 느려요

04:34.110 --> 04:36.120
네 기계 시스템이라고 부르는데

04:36.120 --> 04:37.230
램을 사용하면 전자

04:37.230 --> 04:39.030
시스템을 사용하는데 이건

04:39.030 --> 04:40.770
어떤 부품이든 순간적으로

04:40.770 --> 04:43.050
접근할 수 있어요 ? 네

04:43.050 --> 04:44.880
네 ram은 고체 상태 장치로

04:44.880 --> 04:46.260
여겨지거든요 하드

04:46.260 --> 04:48.210
드라이브나 dvd 같은 기계

04:48.210 --> 04:49.860
장치와는 달리 부하 시간이

04:49.860 --> 04:50.760
과하지 않아요

04:50.760 --> 04:53.700
cd나 블루레이 디스크도

04:53.700 --> 04:55.980
즉 나노초 단위로 빠르게

04:55.980 --> 04:57.420
작동할 수 있다는

04:57.420 --> 04:59.490
거죠 수십억 초 단위요

04:59.490 --> 05:01.590
반면 하드 디스크와 자기

05:01.590 --> 05:03.210
매체는 밀리초 단위로

05:03.210 --> 05:06.990
수천 초 단위로 작동합니다

05:06.990 --> 05:09.120
네 속도 차이가 큰 게 보이시죠 그래서

05:09.120 --> 05:11.130
이 작업을 하는 동안 파일을 ram에

05:11.130 --> 05:12.540
넣어야 합니다

05:12.540 --> 05:13.620
네 이제 기술자가

05:13.620 --> 05:14.490
되면 알게 될

05:14.490 --> 05:16.380
텐데요 여러분 시스템 업그레이드

05:16.380 --> 05:17.580
때 흔히 하는 일 중

05:17.580 --> 05:19.320
하나가 램을 4기가에서

05:19.320 --> 05:21.863
8기가로 바꾸는 겁니다 8기가에서

05:21.863 --> 05:23.880
16기가로 16기가에서 32기가로

05:23.880 --> 05:26.340
바뀌고요

05:26.340 --> 05:27.660
Ram의 양을 늘리면 시스템

05:27.660 --> 05:29.700
속도를 크게 높일 수 있습니다. 더 많은

05:29.700 --> 05:31.200
파일을 열어서 하드 드라이브에서

05:31.200 --> 05:32.940
많은 데이터를 읽고 써야 하는 장벽을

05:32.940 --> 05:34.080
제거하고 더 많은 작업을

05:34.080 --> 05:35.850
수행할 수 있기 때문입니다. 언제든지

05:35.850 --> 05:38.550
더 많은 일을 할 수 있습니다.

05:38.550 --> 05:39.630
네 좋습니다

05:39.630 --> 05:40.920
좋아 주소록을

05:40.920 --> 05:43.020
기반으로 ram의

05:43.020 --> 05:45.360
제한에 대해 얘기하는

05:45.360 --> 05:49.680
것이 중요합니다 ,

05:49.680 --> 05:50.850
네 이제 프로세서가

05:50.850 --> 05:53.280
램에 가서 뭔가를 꺼내야 할 때

05:53.280 --> 05:55.860
메모리를 불러야 합니다

05:55.860 --> 05:57.750
그 이유는 해당 ram 내부와 해당

05:57.750 --> 05:59.490
스토리지가 각기 다른 고유 주소를

05:59.490 --> 06:01.650
갖고 있기 때문입니다. 이것이 바로 우리가

06:01.650 --> 06:03.750
ram의 특정 부분에 저장되는 데이터

06:03.750 --> 06:06.180
조각을 참조하는 방식입니다.

06:06.180 --> 06:07.410
네 좋아요 이제 프로세서나

06:07.410 --> 06:09.210
cpu, 메모리 사이에 메모리

06:09.210 --> 06:15.420
컨트롤러라는 게 있어요 메모리 컨트롤러와 프로세서 사이에 버스가 있고요

06:15.420 --> 06:17.160
이제 버스는 단순히 데이터를 전송하는

06:17.160 --> 06:18.330
통로일 뿐입니다.

06:18.330 --> 06:19.440
네 메모리 컨트롤러는

06:19.440 --> 06:21.060
교통경찰과 비슷해요 교통을

06:21.060 --> 06:23.790
통제하고 cpu와 프로세서에 메모리의 다른

06:23.790 --> 06:26.550
부분에 접근하는 방법을 알려 주죠

06:26.550 --> 06:27.630
이제 버스를 보면 실제로

06:27.630 --> 06:29.490
버스의 두 부분이 있습니다.

06:29.490 --> 06:31.200
네 데이터를 보내고

06:31.200 --> 06:33.300
받는 경로가 있고 주소 경로도

06:33.300 --> 06:35.220
있어서 메모리 어디에

06:35.220 --> 06:37.170
데이터가 위치하는지 알

06:37.170 --> 06:38.970
수 있습니다

06:38.970 --> 06:41.310
따라서 데이터 경로 또는 데이터 버스의

06:41.310 --> 06:42.630
폭을 살펴보면 각 클럭

06:42.630 --> 06:44.370
사이클마다 얼마나 많은 정보를

06:44.370 --> 06:47.340
전송할 수 있는지가 결정됩니다.

06:47.340 --> 06:49.890
네 이제 단일 채널 메모리 컨트롤러를 사용한다면

06:49.890 --> 06:53.250
데이터 버스는 보통 64비트 너비가 될 겁니다 대부분의

06:53.250 --> 06:55.950
현대 컴퓨터에서 그렇죠 ,

06:55.950 --> 06:56.783
네 이제 거기에

06:56.783 --> 06:58.650
추가해 주소 버스를 보면

06:58.650 --> 07:00.720
관련된 너비도 있죠 32비트나

07:00.720 --> 07:04.140
64비트일 수 있어요

07:04.140 --> 07:06.570
이는 cpu가 추적할 수 있는 위치 수와 적절한

07:06.570 --> 07:07.770
주소 지정을 통해 데이터에

07:07.770 --> 07:09.240
액세스할 수 있는 위치에 따라

07:09.240 --> 07:11.010
결정됩니다.

07:11.010 --> 07:13.290
이제 32비트 CPU 또는 x86

07:13.290 --> 07:15.540
기반 CPU를 사용하는 경우 32비트

07:15.540 --> 07:18.300
주소만 사용하여 해당 메모리 버스를 통해

07:18.300 --> 07:21.210
데이터에 액세스할 수 있습니다.

07:21.210 --> 07:22.043
네 이제 이것

07:22.043 --> 07:24.900
때문에 약 40억 개의 아이템이 생겼죠

07:24.900 --> 07:27.690
4기가바이트 데이터요 왜냐하면 그

07:27.690 --> 07:30.690
정보를 처리할 수 있는 비트가 2에서 32분의

07:30.690 --> 07:33.060
1이기 때문이죠

07:33.060 --> 07:35.190
반면에 64비트 cpu를 사용하는

07:35.190 --> 07:36.180
경우에는 2~64개의

07:36.180 --> 07:40.200
가능한 주소 위치가 있으며 대략 184경개의 가능한

07:40.200 --> 07:44.340
옵션을 계산할 수 있습니다.

07:44.340 --> 07:45.480
자 메모리 측면에서

07:45.480 --> 07:48.450
16엑사바이트의 데이터를 호출할 수 있습니다

07:48.450 --> 07:50.610
64비트 프로세서를 사용한다면

07:50.610 --> 07:53.160
많은 데이터를 처리할 수 있습니다

07:53.160 --> 07:54.510
네 요즘 시스템들은 16엑사바이트짜리

07:54.510 --> 07:56.820
램을 사용하지 않죠 비용 문제 때문에요

07:56.820 --> 07:58.740
그리고 대부분의 메인보드에

07:58.740 --> 08:05.100
그만큼의 메모리를 연결할 공간이 없어요 이게 우리 상한선이야

08:05.100 --> 08:06.240
중요한 점은 여러분이

08:06.240 --> 08:08.190
x86이나 32비트 프로세서를

08:08.190 --> 08:09.870
사용한다면 메모리는 최대

08:09.870 --> 08:11.160
4기가까지만 사용할

08:11.160 --> 08:18.000
수 있습니다 현대 컴퓨터에서는 큰 한계가 되는 점이죠 왜냐하면 대부분의 운영체제는 최소한 4기가의

08:18.000 --> 08:23.250
램이 필요합니다 충분한 운영을 위해서요

08:23.250 --> 08:24.083
반면에 64비트

08:24.083 --> 08:25.710
프로세서 또는 x64 아키텍처를

08:25.710 --> 08:27.930
사용하는 경우 이는 동시에 4GB 이상의

08:27.930 --> 08:30.870
RAM에 액세스할 수 있다는 의미이며, 이것이 바로

08:30.870 --> 08:31.860
8GB 시스템에서

08:31.860 --> 08:33.540
사용되는 것을 볼 수 있는 이유입니다.

08:33.540 --> 08:35.370
16, 32 또는 64GB RAM이

08:35.370 --> 08:37.290
있습니다. 모든 RAM에 액세스할

08:37.290 --> 08:41.460
수 있기 때문에 훨씬 더 나은 성능을 제공합니다.

08:41.460 --> 08:42.540
네 그래서 64비트

08:42.540 --> 08:44.700
프로세서를 선택해야 하는 거예요

08:44.700 --> 08:46.470
대부분의 현대 컴퓨터와

08:46.470 --> 08:49.233
응용 프로그램에는요
