O programa glances informa que uma página do google chrome consome 1,10 TB de memória virtual e meu PC não tem essa capacidade (RAM + Disco Rígido).
Sobre isso, o quora explica o seguinte : "a memória virtual pode exceder a memória física. A memória virtual é uma técnica de gerenciamento de memória do sistema que permite que um programa use mais memória do que está fisicamente disponível no computador, transferindo dados temporariamente para o armazenamento em disco. Isso permite que o programa continue rodando mesmo se toda a memória física estiver em uso."
caso concreto: Se o PC tiver 16 GB RAM + 500 GB SSD, é possível que a memória virtual, em um único processo, possa ultrapassar a memória física e chegar a 1,10 TB?
Obrigado
Sim, os intervalos de memória virtual podem ser apoiados não apenas por RAM/swap ou arquivos mapeados em memória, mas também por nada – é possível criar um enorme mapeamento anônimo que permanece quase vazio e, portanto, não corresponde à alocação física de RAM (também conhecido como 'overcommit' no Linux), permanecendo principalmente mapeado para apenas uma única página "zero".
(Observe que "memória virtual" aqui não significa "swap" ou "arquivo de paginação" - essa é a terminologia do Windows que não corresponde ao Linux. Aqui, "memória virtual" significa espaço de endereço virtual abstrato. )
Os tempos de execução de Golang e Haskell costumavam implementar sua alocação de memória interna criando um único mapeamento de tamanho de terabyte antecipadamente, em vez de "arenas" menores sob demanda como, por exemplo, C malloc() faz. Ambos pararam de fazê-lo, mas no passado não era incomum ver um processo Haskell usando >1TiB de endereços de memória virtual.
Os tempos de execução do JavaScript, como WebKit JSCore ou Chrome V8 , implementam o chamado "Gigacage", que reserva regiões vazias de endereços virtuais com dezenas de gigabytes de tamanho (vários deles) para impor certa distância entre diferentes tipos de alocações.