Posso acelerar uma VM para emular a passagem do tempo?

9

Eu gostaria de colocar uma VM em "fast forward" para que eu possa ver vários dias (ou semanas, ou meses) de registros e arquivos temporários compilados e analisados.

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

    
por Dean Rather 15.07.2013 / 07:45

1 resposta

2

Aparentemente, isso pode ser feito jogando com os jiffies no kernel, adicionando uma taxa de aumento de velocidade. Existe um documento com um apresentação sobre um teste rápido de 10 anos . Tudo se resume a isto:

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 timeouts no boot e teve que ajustar todos os timeouts 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 do kernel HZ". É configurável, mas só aceita os valores 100, 250, 300 e 1000.

EDITAR : Se os saltos no tempo forem aceitáveis, libfaketime pode ser uma alternativa muito mais simples. Mas eu não sei como o software de log lidará com isso.

    
por 15.07.2013 / 12:25