Oh, quantas vezes me fiz a mesma pergunta.
Possibilidade de salvar o estado de um programa para que eu possa retomar esse estado mais tarde exatamente como é, sem a necessidade de uma Máquina Virtual.
Bem, não há um.
Existem 2 métodos para conseguir isso.
1. PC Phyisical
O primeiro método é executar o programa em um PC físico e manter o programa em execução o tempo todo. Se você quiser desligar o pc, então esse pc tem que ser colocado em suspensão. Claro, de vez em quando, você será forçado a reiniciar o computador para atualizações.
Dado que você provavelmente quer poder reiniciar o seu PC frequentemente sem ter este programa fechado, você pode usar um segundo PC ou servidor para executar o programa, e usar uma conexão de área de trabalho remota para controlar o programa remotamente.
2. Virtualização
A segunda opção é salvar o conteúdo da RAM. Agora, o problema com esse método é que, quando você carrega um programa, seu espaço de memória é armazenado em algum lugar na memória. Vamos dizer que você tem 16GB de memória RAM, e a pegada de memória do seu programa é de 100mb. Agora, este 100mb pode estar no início dos 16GB de RAM, no meio, no final ou em qualquer outro lugar. Como os endereços de memória mudam toda vez que você inicia o programa, será impossível isolar a seção de memória usada. Além disso, o gerenciamento de memória pode causar problemas indesejados, se tentado. Assim, para poder continuar a fazê-lo, é necessário salvar todo o estado do RAM, que é o total de 16 GB de RAM. Isso não apenas armazena seu programa, mas tudo o mais que acontece no seu computador também.
A maneira mais fácil de fazer isso é, na verdade, o método 1, porque quando você suspende seu computador, ele garante que a parte da RAM não seja alterada na próxima vez que você usar o computador. Isso é o mesmo para o modo de espera e a hibernação. Observe que a hibernação armazena a RAM no disco e, em seguida, desliga totalmente o computador.
Se você quiser salvar uma quantidade menor de RAM no disco e retomar isso, uma Máquina Virtual é o que você precisa usar, porque você pode ter uma VM que tenha um espaço menor porque você a configura como tal.