Capacidade de expansão
De um modo geral os computadores encontram-se limitados nas quantidades de memória que podem conter. A esse limite chamado capacidade de expansão corresponde o valor máximo de memória que um sistema específico pode conter. Existem limitações quanto ao hardware e ao software.
No que respeita às limitações de hardware, de equipamento, a quantidade de memória é limitada pelo espaço de endereçamento do processador. Um processador que utilize endereços de 32 bits, por exemplo, só poderá endereçar 2³² (4 294 967 296) palavras de memória. Esta é a razão pela qual os computadores que utilizam processadores 32 bit (x86) são limitados a 4 gigabytes de memória. Enquanto os processadores atuais 64 bit gerenciam até 128 GB de memória RAM e 16 TB de memória virtual. O sistema operacional também deve ser 64 bit para trabalhar com esses valores.
Um determinado software (como o sistema operativo) pode ter sido desenhado para permitir uma quantidade limitada de memória.
O limite de capacidade de expansão de memórias RAM também é limitado pela placa-mãe do computador, que provê um certo número de fendas para as cartas de memória, bem como o chipset necessário para acessar a memória principal.76
Complementando o comentário anterior, podemos destacar que vários dispositivos em um computador requerem acesso à memória para poderem ser comunicar com o Windows. Isso é conhecido como "Memory-Mapped I/O" ou MMIO. Devido a uma decisão tomada há um bom tempo, durante a elaboração da arquitetura do sistema, para que o espaço de endereçamento do MMIO esteja disponível aos aplicativos, ele precisa estar contido dentro dos 4GB de espaço endereçável, o que é conhecido como "Memory Mapped I/O Reservations".
Por exemplo, se você tem uma placa de vídeo com 256MB de memória onboard, essa memória precisa estar mapeada dentro dos 4GB disponíveis para endereçamento. Se o computador possui 4GB de memória instalada, parte desse espaço não poderá ser acessado por já ter sido reservado para o mapeamento da memória da placa de vídeo. O Windows não usará a memória RAM para armazenar as texturas e os objetos tridimensionais, ele usará a memória onboard da placa, o MMIO é só a forma que o Windows tem de se comunicar com o hardware. O mapeamento da memória da placa de vídeo e de outros componentes do hardware (placa de captura de TV, portas USB, placas de som…) precedem o mapeamento da memória RAM instalada, sendo assim, tais condições reduzem a quantidade total de memória que fica disponível para o sistema operacional.
A redução da quantidade de memória disponível depende dos dispositivos instalados, entretanto, para evitar possíveis problemas de incompatibilidade de hardware, as versões de 32-bit do Windows Vista limitam o total de memória disponível em 3.12GB.
Contudo, se o computador em questão possuir muitos dispositivos instalados a quantidade de memória disponível pode ser reduzida para 3GB ou menos.