WEBVTT

00:00.120 --> 00:00.990
Narrador: Nesta lição,

00:00.990 --> 00:03.390
falaremos sobre a memória de acesso aleatório, simplesmente

00:03.390 --> 00:05.760
chamada de memória dentro do seu sistema, e como abordamos

00:05.760 --> 00:07.920
essa memória.

00:07.920 --> 00:10.800
Primeiro, antes de falarmos sobre como abordar a memória,

00:10.800 --> 00:12.150
precisamos entender melhor

00:12.150 --> 00:13.230
o que é a memória e o que

00:13.230 --> 00:16.200
ela faz por nós em nosso sistema de computador.

00:16.200 --> 00:18.270
Agora, antes, quando falamos sobre processadores,

00:18.270 --> 00:20.190
falamos sobre o fato de que o processador

00:20.190 --> 00:21.960
faz todos os cálculos, mas precisa

00:21.960 --> 00:24.990
ter um local para armazenar dados e instruções antes de fazer

00:24.990 --> 00:27.210
esses cálculos.

00:27.210 --> 00:28.800
Dentro do próprio processador,

00:28.800 --> 00:30.720
ele tem uma memória de altíssima velocidade,

00:30.720 --> 00:32.310
conhecida como cache.

00:32.310 --> 00:34.650
Esse cache ocupa uma quantidade muito pequena

00:34.650 --> 00:36.780
de espaço, mas é extremamente rápido.

00:36.780 --> 00:38.730
Agora, quando o espaço do cache se esgota,

00:38.730 --> 00:40.890
o próximo tipo de memória que você tem no sistema

00:40.890 --> 00:42.900
é o que chamamos de memória de acesso aleatório

00:42.900 --> 00:44.640
ou memória do sistema.

00:44.640 --> 00:46.470
Agora, essa memória ainda é rápida,

00:46.470 --> 00:49.380
mas não tanto quanto a memória cache.

00:49.380 --> 00:51.300
Agora, o que acaba acontecendo é que o processador

00:51.300 --> 00:53.370
usará a memória cache primeiro e, à medida que

00:53.370 --> 00:55.860
usar os dados dessa memória de caixa, novas informações

00:55.860 --> 00:59.160
serão movidas da memória do sistema para o cache.

00:59.160 --> 01:01.710
E ele continua se movendo como um processo de pipeline,

01:01.710 --> 01:03.780
indo da memória do sistema para o cache

01:03.780 --> 01:05.700
e, em seguida, sendo processado e executado

01:05.700 --> 01:07.470
usando a CPU.

01:07.470 --> 01:09.270
Agora, além da memória do sistema, também

01:09.270 --> 01:11.340
temos algo conhecido como armazenamento.

01:11.340 --> 01:13.680
E o armazenamento inclui itens como discos

01:13.680 --> 01:15.900
rígidos, unidades USB, CD-ROMs e DVDs,

01:15.900 --> 01:17.190
entre outros.

01:17.190 --> 01:18.990
Esses dispositivos de armazenamento

01:18.990 --> 01:21.030
em massa são capazes de armazenar muito

01:21.030 --> 01:22.320
mais dados do que a memória,

01:22.320 --> 01:24.360
mas são muito mais lentos.

01:24.360 --> 01:27.690
Portanto, se eu quiser carregar um novo PowerPoint em meu sistema, ele geralmente

01:27.690 --> 01:29.520
é armazenado em meu disco rígido, que é um dispositivo

01:29.520 --> 01:31.410
de armazenamento em massa.

01:31.410 --> 01:32.430
Quando digo ao meu computador

01:32.430 --> 01:33.600
que quero ler isso, o processador

01:33.600 --> 01:36.600
envia um sinal para o disco rígido e pergunta: onde estão

01:36.600 --> 01:38.610
esses dados?

01:38.610 --> 01:40.830
Em seguida, esses dados são transferidos do disco rígido

01:40.830 --> 01:42.120
para a memória do sistema.

01:42.120 --> 01:43.470
E, a partir da memória do sistema,

01:43.470 --> 01:44.790
pequenos trechos podem ser

01:44.790 --> 01:46.410
levados para o cache e, em seguida,

01:46.410 --> 01:48.600
trabalhados pelo processador.

01:48.600 --> 01:50.160
É assim que tudo isso funciona em

01:50.160 --> 01:51.960
conjunto dentro de seu sistema.

01:51.960 --> 01:53.580
Portanto, quero que você tenha isso em mente

01:53.580 --> 01:55.080
quando pensar nos diferentes locais em

01:55.080 --> 01:56.850
que os dados são armazenados no sistema.

01:56.850 --> 01:58.320
Temos dispositivos de armazenamento em massa,

01:58.320 --> 02:00.390
que são mais uma área de armazenamento permanente.

02:00.390 --> 02:01.680
Quando você desligar o computador,

02:01.680 --> 02:03.510
os dados nesses dispositivos de armazenamento

02:03.510 --> 02:04.830
em massa ainda permanecerão.

02:04.830 --> 02:07.470
Mas também temos essa área de armazenamento temporário

02:07.470 --> 02:09.750
chamada RAM, ou memória do sistema, e essa é

02:09.750 --> 02:10.680
uma área considerada

02:10.680 --> 02:12.960
de armazenamento não persistente, pois quando

02:12.960 --> 02:14.580
você desliga o computador, tudo

02:14.580 --> 02:17.010
o que está na RAM é perdido.

02:17.010 --> 02:19.140
Assim, quando estivermos trabalhando com diferentes

02:19.140 --> 02:21.810
arquivos, vamos colocá-los temporariamente na RAM, de modo que

02:21.810 --> 02:24.270
possamos trabalhar com eles de maneira muito mais rápida

02:24.270 --> 02:25.500
e, quando terminarmos, eles

02:25.500 --> 02:27.240
serão salvos de volta no disco rígido, que

02:27.240 --> 02:29.700
é o dispositivo de armazenamento permanente.

02:29.700 --> 02:31.110
Portanto, quando pensamos na memória

02:31.110 --> 02:32.610
do sistema ou na memória de acesso

02:32.610 --> 02:33.600
aleatório, conhecida

02:33.600 --> 02:36.330
como RAM, essa é uma área dinâmica e em constante mudança, que

02:36.330 --> 02:37.950
opera muito rapidamente em comparação

02:37.950 --> 02:39.900
com nossos dispositivos de armazenamento em

02:39.900 --> 02:42.300
massa, como discos rígidos e CD-ROMs.

02:42.300 --> 02:44.040
Para fazer uma analogia de como isso

02:44.040 --> 02:45.210
se parece no mundo físico,

02:45.210 --> 02:46.950
pense em seu escritório.

02:46.950 --> 02:48.690
Em seu escritório, você tem uma mesa,

02:48.690 --> 02:51.030
e nela há pouco espaço, mas quando as coisas estão

02:51.030 --> 02:52.650
em cima da mesa, você pode acessá-las

02:52.650 --> 02:53.940
rapidamente, porque elas

02:53.940 --> 02:55.440
já estão à vista, e você pode alcançá-las

02:55.440 --> 02:57.180
e tocá-las.

02:57.180 --> 02:58.950
Agora, além dos três ou quatro arquivos que

02:58.950 --> 03:00.600
você pode ter abertos em sua mesa, você

03:00.600 --> 03:01.433
também tem, provavelmente,

03:01.433 --> 03:02.520
centenas de arquivos em um

03:02.520 --> 03:04.170
armário de arquivos.

03:04.170 --> 03:05.220
Agora, esse armário de arquivos

03:05.220 --> 03:06.570
é mais parecido com o disco rígido,

03:06.570 --> 03:08.220
é o dispositivo de armazenamento em massa,

03:08.220 --> 03:10.560
enquanto o desktop é mais parecido com a memória RAM.

03:10.560 --> 03:11.970
Assim, quando as coisas estão na RAM,

03:11.970 --> 03:13.110
elas são mais fáceis de acessar,

03:13.110 --> 03:13.950
mais rápidas de acessar

03:13.950 --> 03:16.350
e você pode trabalhar com elas naquele momento.

03:16.350 --> 03:17.550
Mas, quando terminar, dobre

03:17.550 --> 03:19.530
esse arquivo e guarde-o no armário de arquivos,

03:19.530 --> 03:21.090
para que ele esteja lá quando você

03:21.090 --> 03:22.950
precisar dele daqui a uma semana, duas semanas

03:22.950 --> 03:24.720
ou um ano, o que libera mais espaço na sua

03:24.720 --> 03:26.820
área de trabalho para que você possa pegar outros

03:26.820 --> 03:29.400
arquivos e trabalhar com eles.

03:29.400 --> 03:31.080
É exatamente para isso que a RAM é usada,

03:31.080 --> 03:32.550
é esse espaço temporário que está

03:32.550 --> 03:34.830
constantemente mudando e evoluindo.

03:34.830 --> 03:37.950
Portanto, como nossos dispositivos de armazenamento em massa são

03:37.950 --> 03:40.440
muito lentos, geralmente queremos colocar mais coisas

03:40.440 --> 03:41.970
na RAM, mas a RAM é limitada.

03:41.970 --> 03:43.380
Se olharmos para o seu disco

03:43.380 --> 03:45.120
rígido, talvez você tenha um dispositivo

03:45.120 --> 03:48.870
de armazenamento em massa de 500 gigabytes, um terabyte ou até mesmo quatro

03:48.870 --> 03:50.640
terabytes, mas se olharmos para a sua

03:50.640 --> 03:52.230
memória, talvez você tenha oito

03:52.230 --> 03:53.490
gigabytes, 16 gigabytes

03:53.490 --> 03:54.600
ou, se tiver sorte, talvez

03:54.600 --> 03:57.180
até 32 gigabytes de espaço.

03:57.180 --> 03:58.680
Isso significa que você tem muito,

03:58.680 --> 04:01.650
muito menos RAM disponível do que um disco rígido.

04:01.650 --> 04:03.330
Portanto, o que a memória faz

04:03.330 --> 04:05.520
é atuar como um cache de disco.

04:05.520 --> 04:07.890
Dessa forma, podemos puxar os arquivos do disco para a memória,

04:07.890 --> 04:09.420
trabalhar neles e, em seguida, recolocá-los

04:09.420 --> 04:10.440
no dispositivo de armazenamento

04:10.440 --> 04:12.960
em massa quando terminarmos.

04:12.960 --> 04:16.020
Isso permite que a RAM atue como uma área de armazenamento temporário

04:16.020 --> 04:18.780
mais rápida para os dados usados recentemente e comumente,

04:18.780 --> 04:19.980
a partir do disco rígido,

04:19.980 --> 04:22.230
para permitir operações mais rápidas.

04:22.230 --> 04:23.520
Isso ocorre porque a RAM é

04:23.520 --> 04:25.800
capaz de buscar dados muito, muito rapidamente,

04:25.800 --> 04:26.760
enquanto um disco rígido

04:26.760 --> 04:27.990
tradicional precisa girar

04:27.990 --> 04:29.340
o disco até encontrar a parte

04:29.340 --> 04:30.720
certa e, em seguida, extrair

04:30.720 --> 04:32.280
os dados dele, o que é muito mais

04:32.280 --> 04:34.110
lento.

04:34.110 --> 04:36.120
Chamamos isso de sistema mecânico, ao passo

04:36.120 --> 04:37.230
que, quando usamos a RAM,

04:37.230 --> 04:39.030
estamos usando um sistema eletrônico

04:39.030 --> 04:40.770
que pode acessar qualquer parte da RAM

04:40.770 --> 04:43.050
com velocidade quase instantânea.

04:43.050 --> 04:44.880
Isso ocorre porque a RAM é considerada

04:44.880 --> 04:46.260
um dispositivo de estado sólido

04:46.260 --> 04:48.210
e não há tempos de carregamento excessivos,

04:48.210 --> 04:50.760
como ocorre com dispositivos mecânicos, como um disco

04:50.760 --> 04:53.700
rígido, DVD, CD ou até mesmo um disco Blu-ray.

04:53.700 --> 04:55.980
Isso significa que podemos operar muito rápido

04:55.980 --> 04:57.420
em termos de nanossegundos,

04:57.420 --> 04:59.490
que são bilhões de segundos, enquanto o disco

04:59.490 --> 05:01.590
rígido e outras mídias magnéticas são considerados

05:01.590 --> 05:03.210
muito lentos e operam em milhares

05:03.210 --> 05:06.990
de segundos, conhecidos como milissegundos.

05:06.990 --> 05:09.120
Portanto, você pode ver que há uma enorme diferença de velocidade

05:09.120 --> 05:11.130
aqui, e é por isso que queremos colocar nossos arquivos na

05:11.130 --> 05:12.540
RAM enquanto trabalhamos neles.

05:12.540 --> 05:13.620
Portanto, o que você vai

05:13.620 --> 05:14.490
descobrir, como

05:14.490 --> 05:16.380
técnico, é que uma das coisas mais comuns

05:16.380 --> 05:17.580
que você vai fazer, ao atualizar

05:17.580 --> 05:19.320
um sistema, é atualizar a RAM e levá-la

05:19.320 --> 05:21.863
de quatro gigabytes para oito gigabytes, ou oito

05:21.863 --> 05:23.880
gigabytes para 16 gigabytes, ou 16 gigabytes

05:23.880 --> 05:26.340
para 32 gigabytes.

05:26.340 --> 05:27.660
Ao aumentar a quantidade de

05:27.660 --> 05:29.700
RAM, você pode acelerar seriamente seu

05:29.700 --> 05:31.200
sistema, pois está removendo

05:31.200 --> 05:32.940
a barreira de ter que ler e gravar tantos

05:32.940 --> 05:34.080
dados do disco rígido,

05:34.080 --> 05:35.850
podendo ter mais arquivos abertos

05:35.850 --> 05:38.550
e fazer mais trabalho a qualquer momento.

05:38.550 --> 05:39.630
Muito bem, agora que abordamos

05:39.630 --> 05:40.920
os conceitos básicos da RAM

05:40.920 --> 05:43.020
e por que precisamos usar essa memória do sistema,

05:43.020 --> 05:45.360
em vez de confiar em nosso disco rígido para tudo, é

05:45.360 --> 05:48.030
importante falar sobre as limitações da RAM, com base em seu

05:48.030 --> 05:49.680
endereçamento.

05:49.680 --> 05:50.850
Agora, quando o processador

05:50.850 --> 05:53.280
precisa acessar a RAM e obter algo, isso é conhecido

05:53.280 --> 05:55.860
como endereçamento da memória.

05:55.860 --> 05:57.750
Isso se deve ao fato de que, dentro da RAM

05:57.750 --> 05:59.490
e do armazenamento que ela possui, cada

05:59.490 --> 06:01.650
um deles tem um endereço exclusivo diferente,

06:01.650 --> 06:03.750
e é assim que fazemos referência ao dado armazenado

06:03.750 --> 06:06.180
nessa parte específica da RAM.

06:06.180 --> 06:07.410
Agora, entre o processador,

06:07.410 --> 06:09.210
ou CPU, e a memória, temos algo conhecido

06:09.210 --> 06:11.550
como controlador de memória e, entre o controlador

06:11.550 --> 06:15.420
de memória e o processador, temos um barramento.

06:15.420 --> 06:17.160
Agora, um barramento é simplesmente um caminho

06:17.160 --> 06:18.330
para transferirmos dados.

06:18.330 --> 06:19.440
E esse controlador de memória

06:19.440 --> 06:21.060
é quase como um guarda de trânsito,

06:21.060 --> 06:23.790
direcionando o tráfego e informando à CPU e ao processador

06:23.790 --> 06:26.550
como acessar diferentes partes da memória.

06:26.550 --> 06:27.630
Agora, quando você olha para

06:27.630 --> 06:29.490
o ônibus, na verdade há duas partes do ônibus.

06:29.490 --> 06:31.200
Há o caminho que é usado para dados

06:31.200 --> 06:33.300
e para enviar e receber informações, e há

06:33.300 --> 06:35.220
também um caminho de endereço que nos

06:35.220 --> 06:37.170
ajuda a determinar em que parte da memória

06:37.170 --> 06:38.970
os dados estão localizados.

06:38.970 --> 06:41.310
Portanto, quando você observa a largura do caminho

06:41.310 --> 06:42.630
de dados ou do barramento de dados,

06:42.630 --> 06:44.370
isso determina a quantidade de informações

06:44.370 --> 06:47.340
que podem ser transferidas a cada ciclo de clock.

06:47.340 --> 06:49.890
Agora, se você estiver usando controladores de memória

06:49.890 --> 06:53.250
de canal único, o barramento de dados geralmente terá 64 bits de largura,

06:53.250 --> 06:55.950
e isso acontece na maioria dos computadores modernos.

06:55.950 --> 06:56.783
Agora, além disso,

06:56.783 --> 06:58.650
quando olhamos para o barramento

06:58.650 --> 07:00.720
de endereços, há uma largura associada

07:00.720 --> 07:04.140
a ele também, que pode ser de 32 ou 64 bits.

07:04.140 --> 07:06.570
Isso é determinado pelo número de locais que

07:06.570 --> 07:07.770
a CPU pode controlar

07:07.770 --> 07:09.240
e acessar os dados endereçando-os

07:09.240 --> 07:11.010
adequadamente.

07:11.010 --> 07:13.290
Agora, se você estiver usando uma CPU

07:13.290 --> 07:15.540
de 32 bits ou uma CPU baseada em x86,

07:15.540 --> 07:18.300
só poderá usar um endereço de 32 bits para acessar

07:18.300 --> 07:21.210
dados nesse barramento de memória.

07:21.210 --> 07:22.043
Agora, por causa

07:22.043 --> 07:24.900
disso, você tem cerca de 4 bilhões de itens que podem ser

07:24.900 --> 07:27.690
endereçados, o que é conhecido como quatro gigabytes

07:27.690 --> 07:30.690
de dados, porque você tem de dois a 32 bits disponíveis para

07:30.690 --> 07:33.060
poder endereçar essas informações.

07:33.060 --> 07:35.190
Agora, se você estiver usando uma CPU

07:35.190 --> 07:36.180
de 64 bits, por outro

07:36.180 --> 07:39.210
lado, terá dois dos 64 locais de endereço possíveis,

07:39.210 --> 07:40.200
o que equivale a aproximadamente

07:40.200 --> 07:44.340
184 quintilhões de opções possíveis.

07:44.340 --> 07:45.480
Agora, em termos de memória,

07:45.480 --> 07:48.450
chamamos isso de 16 exabytes de dados, o que significa que

07:48.450 --> 07:50.610
podemos endereçar muitos dados se estivermos

07:50.610 --> 07:53.160
usando um processador de 64 bits.

07:53.160 --> 07:54.510
A maioria de nossos sistemas

07:54.510 --> 07:56.820
atualmente não usará 16 exabytes de RAM, porque

07:56.820 --> 07:58.740
isso seria proibitivamente caro e não

07:58.740 --> 08:00.960
há espaço suficiente na maioria das placas-mãe

08:00.960 --> 08:02.700
para conectar essa quantidade de memória,

08:02.700 --> 08:05.100
mas esse é o nosso limite máximo.

08:05.100 --> 08:06.240
O que realmente importa

08:06.240 --> 08:08.190
é que, se você estiver usando um processador

08:08.190 --> 08:09.870
x86 ou de 32 bits, só poderá endereçar

08:09.870 --> 08:11.160
no máximo quatro gigabytes

08:11.160 --> 08:13.470
de memória, e essa é uma grande limitação para

08:13.470 --> 08:16.230
a computação moderna, pois a maioria dos sistemas

08:16.230 --> 08:18.000
operacionais modernos exigirá

08:18.000 --> 08:20.790
pelo menos quatro gigabytes de RAM para poder operar

08:20.790 --> 08:23.250
adequadamente.

08:23.250 --> 08:24.083
Por outro lado, se

08:24.083 --> 08:25.710
você estiver usando um processador

08:25.710 --> 08:27.930
de 64 bits ou arquitetura x64, isso significa

08:27.930 --> 08:30.870
que você pode acessar mais de quatro gigabytes de RAM de uma

08:30.870 --> 08:31.860
só vez, e é por isso que

08:31.860 --> 08:33.540
você verá esse recurso sendo usado

08:33.540 --> 08:35.370
em sistemas com 8, 16, 32 ou 64 gigabytes

08:35.370 --> 08:37.290
de RAM, porque eles têm acesso a toda essa

08:37.290 --> 08:39.360
RAM, o que proporciona um desempenho muito

08:39.360 --> 08:41.460
melhor.

08:41.460 --> 08:42.540
Esse é outro motivo pelo

08:42.540 --> 08:44.700
qual você deve escolher um processador de 64 bits

08:44.700 --> 08:46.470
em vez de um processador de 32 bits para

08:46.470 --> 08:49.233
a maioria dos computadores e aplicativos modernos.
