Aqueles usuários de computador que têm sortepara aproveitar a glória do apogeu dos sistemas baseados em processadores compatíveis com 8086, eles sabem muito bem o quão importante era a quantidade de memória instalada naquela época. A conta era literalmente em kilobytes: para ultrapassar a base de 640 kb e chegar aos "fantásticos" 736 kb, foi adquirido um módulo de expansão externa especial, que é uma placa pesada em uma caixa relativamente grande. No entanto, a tecnologia de computação evoluiu rapidamente e logo a barreira psicológica de 1 megabyte foi ultrapassada. Os módulos de RAM tornaram-se muito mais compactos, além disso, surgiram processadores que os utilizam ao máximo. Os aplicativos não ficaram para trás. Um evento significativo foi o lançamento do Windows versão 3, que usava memória virtual. No entanto, esses foram apenas passos tímidos em uma direção que mais tarde se tornaria o padrão de todos os sistemas operacionais.
O que é memória virtual?Imagine dois computadores idênticos executando o Windows 3, apenas um tem 1 MB de memória e o outro tem 2 MB. Selecionar aplicativos de software com base no volume significa condenar os programadores a trabalhos forçados, porque eles terão que otimizar seus produtos para 1, 2, etc. megabyte. Criar um programa projetado para um mínimo padrão de 640 kb significa abrir mão de alguns recursos, "dirigindo" o aplicativo para uma estrutura. E focar em 2 MB significa perder compradores em potencial que têm apenas 1 MB em seus computadores. A Microsoft também entendeu isso, então um mecanismo chamado "memória virtual" foi proposto. Os programadores não precisam mais saber o quanto está instalado em cada computador. É claro que algumas restrições ainda são levadas em consideração, mas, em geral, o sistema operacional cuidou de como "fazer amigos" o aplicativo que exige muitos recursos e os componentes do computador. Nesse caso, é claro, nenhum milagre ocorre. O próprio princípio de operação é extremamente simples.
Veja, por exemplo, o caso de um computador com1 Mb lança um aplicativo desenvolvido em 2 Mb. Parte do volume é ocupada pelo próprio sistema, portanto, apenas 500 KB de 1 MB estão disponíveis para o usuário (condicionalmente). Lançamos o aplicativo. Se a memória virtual não for usada ou estiver desabilitada, o programa ocupa todos os 500 kb e para de funcionar, exibindo uma mensagem de erro. Mas tudo é completamente diferente se o mecanismo estiver ligado: esses mesmos 500 KB são ocupados, se houver a próxima solicitação de memória, o bloco de dados é gravado em um arquivo especial no disco, liberando espaço na RAM. O mecanismo é "transparente" para o aplicativo. Na verdade, a memória virtual faz parte da RAM, mas não está localizada nos microcircuitos, mas no disco. Essa solução teve tanto sucesso que ainda há trabalho em andamento para melhorá-la. Portanto, no mais novo Windows 8, um arquivo de troca foi adicionado ao arquivo de paginação já familiar, destinado apenas a aplicativos metropolitanos.
Às vezes, os usuários podem ver o sistemamensagem de que a memória virtual está se esgotando. Como isso pode ser explicado à luz do acima? É ainda mais incompreensível quando você considera que ainda pode haver espaço livre em disco no disco rígido. Uma das razões mais prováveis para isso está nas configurações incorretas do mecanismo de memória virtual. Embora o padrão do sistema para controlar automaticamente o tamanho do arquivo de paginação, os ajustes manuais são permitidos usando limites rígidos. Se é necessário fazer isso ou não - cada usuário decide por conta própria, mas se ocorrer um erro por falta de volume, ele terá que aumentar o limite superior permitido. Isso é configurado nos parâmetros de desempenho (podem ser acessados através das propriedades “Meu Computador” ou do painel de controle).