Windows Tips & News

DTrace вече е достъпен за Windows

click fraud protection
ПРЕПОРЪЧВА: Щракнете тук, за да коригирате проблеми с Windows и да оптимизирате производителността на системата

Следващата актуализация на функциите на Windows 10 (19H1, актуализация от април 2019 г., версия 1903) ще включва поддръжка за DTrace, популярния инструмент за отстраняване на грешки и диагностика с отворен код. Първоначално е създаден за Solaris и стана достъпен за Linux, FreeBSD, NetBSD и macOS. Microsoft го пренесе към Windows.

Реклама

DTrace е динамична рамка за проследяване, която позволява на администратор или разработчик да получи преглед в реално време в системата в режим на потребител или ядро. DTrace има високо ниво в стил C и мощен език за програмиране, който ви позволява да вмъквате динамично точки за проследяване. Използвайки тези динамично вмъкнати точки на проследяване, можете да филтрирате по условия или грешки, да пишете код за анализиране на модели на заключване, да откривате застой и т.н.

В Windows DTrace разширява проследяването на събития за Windows (ETW), което е статично и не предоставя възможност за програмно вмъкване на точки за проследяване по време на изпълнение.

Всички API и функционалности, използвани от dtrace.sys, са документирани извиквания.

Dtrace на Windows

Microsoft внедри специален драйвер за Windows 10, който позволява изпълняването на редица роли за мониторинг на системата. Драйверът ще бъде включен в Windows 10 версия 1903. Също така, DTrace в момента изисква Windows да се стартира с активиран дебъгер на ядрото.

Изходният код за пренесения инструмент DTrace е достъпен в GitHub. Посетете страницата “DTrace на Windows” под проекта OpenDTrace на GitHub, за да го видите.

СъдържаниеКрия
Настройте DTrace в Windows 10
Използване на DTrace

Настройте DTrace в Windows 10

Предпоставки за използване на функцията

  • Windows 10 вътрешна информация сборка 18342 или по-високо
  • Предлага се само на x64 Windows и улавя информация за проследяване само за 64-битови процеси
  • Windows Insider програма е активиран и конфигуриран с валиден акаунт в Windows Insider
    • Посетете Settings->Update & Security->Windows Insider Program за подробности

инструкции:

  1. BCD конфигурационен комплект:
    1. bcdedit /включи dtrace
    2. Имайте предвид, че трябва да зададете отново опцията bcdedit, ако надстроите до нова версия на Insider
  2. Изтегли и инсталирайте пакета DTrace от център за изтегляне.
    1. Това инсталира компонентите на потребителския режим, драйверите и пакетите с допълнителни функции при поискване, необходими за функционирането на DTrace.
  3. По избор: Актуализирайте PATH променлива на средата да включва C:\Program Files\DTrace
    1. задайте PATH=%PATH%;"C:\Program Files\DTrace"
  4. Настройвам път на символа
    1. Създайте нова директория за локално кеширане на символи. Пример: mkdir c:\symbols
    2. Комплект _NT_SYMBOL_PATH=srv*C:\symbols*http://msdl.microsoft.com/download/symbols
    3. DTrace автоматично изтегля необходимите символи от символния сървър и кешира в локалния път.
  5. По избор:Настройване на дебъгер на ядрото връзка към целевата машина (MSDN връзка). Това е само изисква се, ако искате да проследите събития на ядрото с помощта на FBT или други доставчици.
    1. Имайте предвид, че ще трябва да деактивирате Secureboot и Bitlocker на C: (ако е активиран), ако искате да настроите дебъгер на ядрото.
  6. Рестартирайте целева машина

Използване на DTrace

  1. Отворете ан повишен команден ред.
  2. Изпълнете една от следните команди:
    # Резюме на системно извикване по програма за 5 секунди: dtrace -Fn "tick-5sec { exit (0);} syscallentry{ @num[pid, execname] = count();} " # Обобщаване на таймера за настройка/отмяна на програмата за 3 секунди: dtrace -Fn "tick-3sec { exit (0);} syscall:: Nt*Timer*:entry { @[probefunc, execname, pid] = count();}" # Изхвърляне на структурата на ядрото на системния процес: (изисква символ път към бъде настроен) dtrace -n "BEGIN{print(*(struct nt`_EPROCESS *) nt`PsInitialSystemProcess);exit (0);}" # Проследяване на пътища през NTFS при стартиране на notepad.exe (изисква KD a

Командата dtrace -lvn системно повикване ще изброи всички проби и техните параметри, налични от доставчика на системно повикване.

Следват някои от доставчиците, налични в Windows, и това, което те инструментират.

  • системно извикване – NTOS системни повиквания
  • fbt (Проследяване на границата на функциите) – Въвеждане и връщане на функцията на ядрото
  • pid – Проследяване на процес в потребителски режим. Подобно на FBT в режим на ядрото, но също така позволява инструментирането на произволни отмествания на функциите.
  • etw (Проследяване на събития за Windows) – Позволява да се дефинират проби за ETW Този доставчик помага да се използва съществуващата инструментариум на операционната система в DTrace.
    • Това е едно допълнение, което направихме към DTrace, за да му позволим да изложи и получи цялата информация, която Windows вече предоставя ETW.

Още примерни скриптове, приложими за Windows сценарии, могат да бъдат намерени в това директория с образци.

Източник: Microsoft

ПРЕПОРЪЧВА: Щракнете тук, за да коригирате проблеми с Windows и да оптимизирате производителността на системата
Набор от икони Deepin-lite за Linux

Набор от икони Deepin-lite за Linux

ПРЕПОРЪЧВА: Щракнете тук, за да коригирате проблеми с Windows и да оптимизирате производителностт...

Прочетете още

Променете иконите на папка на Windows 10 с файл *.ico

Променете иконите на папка на Windows 10 с файл *.ico

ПРЕПОРЪЧВА: Щракнете тук, за да коригирате проблеми с Windows и да оптимизирате производителностт...

Прочетете още

Как да промените цвета на текста на лентата на задачите в Windows 10

Как да промените цвета на текста на лентата на задачите в Windows 10

ПРЕПОРЪЧВА: Щракнете тук, за да коригирате проблеми с Windows и да оптимизирате производителностт...

Прочетете още