Posso "acelerar" uma VM para emular a passagem do tempo?

9

Gostaria de colocar uma VM em "avanço rápido" para que eu possa ver vários dias (ou semanas ou meses) de logs e arquivos temporários acumulados e analisados.

Isso é possível com o virtualbox e o ubuntu 12.04 VM?

Dean Rather
fonte
Duvido que seja possível :-(
stommestack
11
Basta abrir o computador na Internet e assistir os logs serem preenchidos e seu cabelo ficar mais branco.
Paulo Almeida

Respostas:

2

Aparentemente, isso pode ser feito brincando com os instantes do kernel, adicionando uma taxa de aceleração. Há um documento com uma apresentação sobre um teste rápido de 10 anos . Tudo se resume a isso:

Adicione um parâmetro ao Kconfig (SPEEDUP_RATIO, ~ 1-1000), modifique do_timer ():

 void do_timer(...) {
        jiffies_64 = jiffies_64 + speedup_ratio;
    }

Finalmente, controle a taxa via procfs ( echo 100 > /proc/accel). Então ele teve muitos tempos limite na inicialização e teve que ajustar todos os tempos limite no kernel (timeout * speedup_ratio). Ele diz que a maioria desses valores pode ser encontrada com grep jiffies, mas o "mais" significa que pode envolver alguma tentativa e erro.

Além disso, de acordo com man 7 time: "O tamanho de um instante é determinado pelo valor da constante HZ do kernel". É configurável, mas aceita apenas os valores 100, 250, 300 e 1000.

EDIT : Se os intervalos de tempo são aceitáveis, libfaketime pode ser uma alternativa muito mais simples. Mas não sei como o software de registro lidará com isso.

Paulo Almeida
fonte