WEBVTT

00:00.000 --> 00:01.050
Instrutor: Nesta lição,

00:01.050 --> 00:03.240
falaremos sobre memória virtual.

00:03.240 --> 00:05.760
A memória virtual, também conhecida como arquivo

00:05.760 --> 00:06.840
de página, é essencialmente

00:06.840 --> 00:09.630
um bloco de espaço no disco rígido ou na unidade de estado

00:09.630 --> 00:11.430
sólido que é alocado pelo sistema operacional

00:11.430 --> 00:13.020
e finge ser memória, ou RAM, quando

00:13.020 --> 00:15.840
a RAM física está com pouca ou nenhuma capacidade para os

00:15.840 --> 00:18.660
programas em execução ativa.

00:18.660 --> 00:20.040
Esse é um recurso excelente da

00:20.040 --> 00:21.683
maioria dos sistemas operacionais

00:21.683 --> 00:23.670
modernos que permite basicamente emular

00:23.670 --> 00:24.930
que você tem mais memória do

00:24.930 --> 00:26.220
que realmente tem.

00:26.220 --> 00:27.300
Mas lembre-se de que

00:27.300 --> 00:30.540
essa não é uma solução perfeita para todas as soluções,

00:30.540 --> 00:33.150
e é mais uma solução temporária para você, e se

00:33.150 --> 00:35.850
estiver usando muito a RAM virtual, provavelmente

00:35.850 --> 00:38.220
precisará aumentar a RAM física no sistema

00:38.220 --> 00:39.523
também.

00:39.523 --> 00:40.777
Por que isso acontece?

00:40.777 --> 00:42.024
Bem, lembre-se, quando estamos

00:42.024 --> 00:43.770
lidando com os diferentes tipos de memória

00:43.770 --> 00:46.890
e armazenamento, temos três tipos principais.

00:46.890 --> 00:49.080
Temos uma memória cache dentro do processador

00:49.080 --> 00:50.790
que é extremamente rápida.

00:50.790 --> 00:53.130
Em seguida, temos nossa memória física de acesso

00:53.130 --> 00:54.300
aleatório, ou memória do

00:54.300 --> 00:56.220
sistema, e essa RAM é mais lenta do que o cache,

00:56.220 --> 01:00.300
mas ainda é muito mais rápida do que usar um dispositivo de armazenamento, como uma unidade

01:00.300 --> 01:04.290
de disco rígido ou até mesmo uma unidade de estado sólido mais rápida.

01:04.290 --> 01:06.919
No final das contas, não há um substituto real

01:06.919 --> 01:09.690
para a memória física, mas, em caso de necessidade,

01:09.690 --> 01:11.704
a RAM virtual pode ser usada.

01:11.704 --> 01:14.790
Agora, quando se trata de RAM virtual ou memória virtual, como

01:14.790 --> 01:15.990
costumamos chamá-la, há

01:15.990 --> 01:18.150
realmente dois tipos que você verá.

01:18.150 --> 01:20.010
Se estiver executando em um sistema Windows,

01:20.010 --> 01:22.740
você ouvirá essa referência como um arquivo de página.

01:22.740 --> 01:25.740
Se você estiver executando um sistema Linux, Unix ou

01:25.740 --> 01:28.620
Mac, isso geralmente é chamado de espaço de troca.

01:28.620 --> 01:30.990
Ambos significam exatamente a mesma coisa.

01:30.990 --> 01:32.640
Basicamente, é um arquivo oculto

01:32.640 --> 01:34.869
em seu dispositivo de armazenamento que aumenta

01:34.869 --> 01:37.710
de tamanho e finge ser a memória do sistema para você.

01:37.710 --> 01:39.925
Assim, à medida que a memória física do sistema

01:39.925 --> 01:42.600
se esgotar, os dados serão transferidos da memória física

01:42.600 --> 01:44.880
para o arquivo de página ou espaço de troca, e o

01:44.880 --> 01:47.910
sistema fingirá que você tem mais memória do que tem.

01:47.910 --> 01:48.840
Agora, um sinal claro

01:48.840 --> 01:51.064
de que você está confiando demais na memória virtual

01:51.064 --> 01:53.400
é quando você começa a ouvir o disco rígido girando muito

01:53.400 --> 01:55.741
enquanto trabalha em diferentes programas.

01:55.741 --> 01:57.600
Isso ocorre porque as coisas estão sendo trocadas

01:57.600 --> 01:59.340
para dentro e para fora desse arquivo de página

01:59.340 --> 02:01.470
ou espaço de troca e de volta para a RAM.

02:01.470 --> 02:02.670
E toda vez que isso acontece,

02:02.670 --> 02:04.830
ele precisa ler e gravar no disco rígido,

02:04.830 --> 02:06.368
o que torna todo o sistema e todos

02:06.368 --> 02:08.820
os outros processos mais lentos.

02:08.820 --> 02:10.500
Quando se lida com memória virtual,

02:10.500 --> 02:11.790
o sistema operacional

02:11.790 --> 02:13.180
atribui esses locais de memória

02:13.180 --> 02:15.000
a esses diferentes processos em

02:15.000 --> 02:17.535
blocos de quatro kilobytes.

02:17.535 --> 02:20.024
Esses blocos são conhecidos como páginas.

02:20.024 --> 02:22.050
Agora, o controlador de memória será capaz

02:22.050 --> 02:24.480
de mover coisas para dentro ou para fora da memória

02:24.480 --> 02:27.570
física usando esses pedaços ou páginas de quatro kilobytes, o

02:27.570 --> 02:30.030
que, na verdade, libera mais memória física.

02:30.030 --> 02:33.210
Mas lembre-se de que a CPU do seu sistema não pode ler diretamente do

02:33.210 --> 02:36.990
disco rígido como pode ler da memória usando seu barramento e, portanto, esse material

02:36.990 --> 02:39.630
terá que ser paginado para dentro e para fora da memória

02:39.630 --> 02:41.640
a partir do arquivo de troca ou do arquivo de

02:41.640 --> 02:43.901
página para que você possa usá-lo.

02:43.901 --> 02:46.770
Se você começar a perceber que o sistema está ficando muito lento, lembre-se

02:46.770 --> 02:49.290
de que provavelmente será um problema de memória, portanto, verifique

02:49.290 --> 02:50.670
a memória disponível e a quantidade

02:50.670 --> 02:52.380
de memória livre que você tem.

02:52.380 --> 02:54.630
E se você não tiver muito, talvez seja hora de colocar

02:54.630 --> 02:56.619
mais memória física adicional.

02:56.619 --> 02:59.160
Mas, enquanto isso, você pode aumentar o tamanho da memória

02:59.160 --> 03:01.260
virtual, do arquivo de página ou do espaço de

03:01.260 --> 03:03.990
troca para poder armazenar um pouco mais e fazer com que o sistema

03:03.990 --> 03:06.090
pense que tem mais memória do que realmente tem,

03:06.090 --> 03:08.301
como uma solução intermediária até que o módulo

03:08.301 --> 03:11.553
de RAM física possa ser instalado mais tarde.
