
如何在linux中設定時間:
1 秒定義為 10 秒(10 秒 = 1 秒自己的時間)
我想愚弄那裡運行的所有進程,以使用快 10 倍的時間。所以sleep(1)
將持續 0.1 秒。
如何實現呢?
答案1
warp
您可以使用以下命令以任意更快的時脈頻率執行命令(包括 shell 及其所有子命令)ast-開放包裹。它使用 LD_PRELOAD,因此不能與 setuid 或 setgid 或(現在相對罕見)靜態連結程式一起使用。來自扭曲手冊頁:
warp [ 選項 ] 日期 [ 指令 [ arg ... ] ]
經透過攔截與時間相關的系統呼叫並修改所看到的時間,在不同的時間範圍內執行動態連結的命令命令使用公式:
時間' = 時間 + 扭曲 + (時間 - 基準) * (因子 - 1)
在哪裡經是現在的日期,根據預設為日期,並且因素預設為 1。
選項
-b, --base=日期
將基準日期或開始日期設定為日期。對於重複一組測試很有用。預設值為日期。
-f, --factor=因子
將扭曲時鐘設定為滴答聲因素秒/實秒。預設值為 1。
經執行命令帶有可選參數,或者噓如果命令被省略。所有行程執行者命令在同一時間範圍內扭曲。時間進展為命令及其子代的速率為因素倍系統時鐘。由以下人員建立的任何文件命令或者它的孩子會出現比日期到命令及其子項,但實際上將處於非扭曲命令的正常時間範圍內。