define tempo próprio no linux

2

como definir o tempo no linux dessa maneira:

1 segundo define como 10 segundos (10 segundos = 1 segundo de tempo)

Eu quero enganar todos os processos executados para usar um tempo 10x mais rápido. então sleep(1) durará 0,1 segundos reais.

como alcançá-lo?

    
por user1999710 13.06.2014 / 15:41

1 resposta

5

Você pode executar um comando (incluindo um shell e todos os seus filhos) com uma freqüência de clock arbitrária mais rápida usando o comando warp do ast-open . Ele usa LD_PRELOAD, portanto, não funciona com programas setuid ou setgid ou (agora relativamente raros) vinculados estaticamente. Na página do manual de dobra :

warp [ options ] date [ command [ arg ... ] ]

warp executes a dynamically linked command in a different time frame by intercepting time related system calls and modifying the times seen by command using the formula:

time' = time + warp + (time - base) * (factor - 1)

where warp is date-now, base is date by default, and factor is 1 by default.

OPTIONS

-b, --base=date

Set the base or starting date to date. Useful for repeating a set of tests. The default value is date.

     

-f, --factor = fator

     

Set the warped clock to tick at factor seconds per real second. The default value is 1.

     

warp executa o comando com argumentos opcionais, ou sh se o comando for omitido. Todos os processos executados pelo comando são deformados no mesmo período de tempo. O tempo progride para o comando e seus filhos, à taxa de fator vezes o relógio do sistema. Quaisquer arquivos criados pelo comando ou seus filhos aparecerão mais novos que data para o comando e seus filhos, mas estarão no período de tempo normal para comandos não deformados.

    
por 13.06.2014 / 23:22

Tags