Есть два значения: 1. В микросекундах 2. В количестве тиковК примеру на одном из конфигураций получили след. значение:
Время входа: час/мин/сек/миллисек/микросек Время выполнения в микросекундах время в тиках |||||||||||||||| | | 08:27:15:062:190 hello.exe 00404F07 0F58 WriteFile(00000007, 0012FA84: "Hello World!", 0000001D, 0012FA78, 00000000) ret: 00000001 [124] [446] 08:27:15:062:195 kernel32.dll 7C81CC19 0F58 WriteConsoleA(00000007, 0012FA84: "Hello World!", 0000001D, 0012FA78, 00000000) ret: 00000001 [118] [425] 08:27:15:062:449 hello.exe 004013B9 0F58 CreateFileA(00407474: "CONIN$", C0000000, 00000003, 00000000, 00000003, 00000000, 00000000) ret: 0000000F [56] [203] 08:27:15:062:454 kernel32.dll 7C801A4F 0F58 CreateFileW(7FFDFC00: "CONIN$", C0000000, 00000003, 00000000, 00000003, 00000000, 00000000) ret: 0000000F [50] [180] 08:27:15:062:463 kernel32.dll 7C811216 0F58 lstrcmpiW(7C811284: "CONIN$", 7C811284: "CONIN$") ret: 00000000 [20] [74] 08:27:15:062:468 kernel32.dll 7C80A83D 0F58 GetThreadLocale() ret: 00000419 [3] [14] 08:27:15:062:477 kernel32.dll 7C80A843 0F58 CompareStringW(00000419, 00000001, 7C811284: "CONIN$", FFFFFFFF, 7C811284: "CONIN$", FFFFFFFF) ret: 00000002 [5] [19]Микросекунда является крупной величиной для замера времени исполнения кода, если недостаточно точности и позволяет разрешение таймера, в лог включается время в "тиках" таймера. Для перевода из "тиков" во время нужно
В миллисек: D_ms = x * QPCFreq / 1000000; D_ns = x * QPCFreq / 1000000000; D_ms - время в микросекундах D_ns - время в наносекундах x - значение в тиках (последняя колонка в логе) QPCFreq - разрешение таймера (указывается в самом начале лога шпиона как QPC Frequency)