Windows Tips & News

DTrace je zdaj na voljo v sistemu Windows

PRIPOROČANO: Kliknite tukaj, če želite odpraviti težave z operacijskim sistemom Windows in optimizirati delovanje sistema

Naslednja posodobitev funkcij sistema Windows 10 (19H1, posodobitev aprila 2019, različica 1903) bo vključevala podporo za DTrace, priljubljeno odprtokodno orodje za odpravljanje napak in diagnostiko. Prvotno je bil zgrajen za Solaris in je postal na voljo za Linux, FreeBSD, NetBSD in macOS. Microsoft ga je prenesel v Windows.

Oglas

DTrace je dinamično ogrodje za sledenje, ki skrbniku ali razvijalcu omogoča vpogled v sistem v realnem času v uporabniškem ali jedrnem načinu. DTrace ima visoko raven in zmogljiv programski jezik v slogu C, ki vam omogoča dinamično vstavljanje točk sledenja. S temi dinamično vstavljenimi točkami sledenja lahko filtrirate pogoje ali napake, pišete kodo za analizo vzorcev zaklepanja, odkrivate zastoje itd.

V sistemu Windows DTrace razširi sledenje dogodkov za Windows (ETW), ki je statično in ne omogoča programskega vstavljanja točk sledenja med izvajanjem.

Vsi API-ji in funkcionalnosti, ki jih uporablja dtrace.sys, so dokumentirani klici.

Dtrace v sistemu Windows

Microsoft je implementiral poseben gonilnik za Windows 10, ki omogoča izvajanje številnih vlog za spremljanje sistema. Gonilnik bo vključen v operacijski sistem Windows 10 različice 1903. Poleg tega DTrace trenutno zahteva, da se Windows zažene z omogočenim razhroščevalnikom jedra.

Izvorna koda za preneseno orodje DTrace je na voljo na GitHubu. Obiščite stran "DTrace v sistemu Windows” v okviru projekta OpenDTrace na GitHubu, da si ga ogledate.

Vsebinaskrij
Nastavite DTrace v sistemu Windows 10
Uporaba DTrace

Nastavite DTrace v sistemu Windows 10

Predpogoji za uporabo funkcije

  • Windows 10 insajder gradnja 18342 ali višje
  • Na voljo samo na x64 Windows in zajame informacije o sledenju samo za 64-bitne procese
  • Program Windows Insider je omogočeno in konfiguriran z veljavnim računom Windows Insider
    • Za podrobnosti obiščite Settings->Update & Security->Windows Insider Program

Navodila:

  1. BCD konfiguracijski nabor:
    1. bcdedit /nastavi dtrace
    2. Upoštevajte, da morate znova nastaviti možnost bcdedit, če nadgradite na novo različico Insider
  2. Prenesi in namestite paket DTrace iz center za prenos.
    1. S tem se namestijo komponente uporabniškega načina, gonilniki in dodatni paketi funkcij na zahtevo, ki so potrebni za delovanje DTrace.
  3. Izbirno: posodobite Spremenljivka okolja PATH vključuje C: \ Program Files \ DTrace
    1. nastavite PATH=%PATH%;"C:\Program Files\DTrace"
  4. Nastaviti pot simbola
    1. Ustvarite nov imenik za lokalno predpomnjenje simbolov. Primer: mkdir c:\symbols
    2. Set _NT_SYMBOL_PATH=srv*C:\symbols*http://msdl.microsoft.com/download/symbols
    3. DTrace samodejno prenese potrebne simbole s strežnika simbolov in predpomni na lokalno pot.
  5. Neobvezno:Nastavite razhroščevalnik jedra povezava s ciljnim strojem (Povezava MSDN). to je samo zahteva, če želite slediti dogodkim jedra z uporabo FBT ali drugih ponudnikov.
    1. Upoštevajte, da boste morali onemogočiti Secureboot in Bitlocker na C: (če je omogočeno), če želite nastaviti razhroščevalnik jedra.
  6. Ponovno zaženite ciljni stroj

Uporaba DTrace

  1. Odprite povišan ukazni poziv.
  2. Izvedite enega od naslednjih ukazov:
    # Povzetek sistemskega klica po programu za 5 sekund: dtrace -Fn "tick-5sec { exit (0);} syscallentry{ @num[pid, execname] = count();} " # Povzemi program za nastavitev/preklic časovnika za 3 sekunde: dtrace -Fn "tick-3sec { exit (0);} syscall:: Nt*Timer*:entry { @[probefunc, execname, pid] = count();}" # Izpis struktura jedra sistemskega procesa: (zahteva pot simbola do biti nastavljen) dtrace -n "BEGIN{print(*(struct nt`_EPROCESS *) nt`PsInitialSystemProcess);exit (0);}" # Sledenje poti skozi NTFS pri izvajanju notepad.exe (zahteva KD a

Ukaz dtrace -lvn sistemski klic bo navedel vse sonde in njihove parametre, ki so na voljo pri ponudniku sistemskega klica.

Spodaj je nekaj ponudnikov, ki so na voljo v sistemu Windows, in kaj instrumenti uporabljajo.

  • sistemski klic – Sistemski klici NTOS
  • fbt (Trajanje mej funkcij) – Vnos in vrnitev funkcije jedra
  • pid – Sledenje procesom v uporabniškem načinu. Tako kot FBT v načinu jedra, vendar omogoča tudi instrumentacijo poljubnih odmikov funkcij.
  • etw (Sledenje dogodkom za Windows) – Omogoča definiranje sond za ETW Ta ponudnik pomaga izkoristiti instrumentacijo obstoječega operacijskega sistema v DTrace.
    • To je dodatek, ki smo ga naredili za DTrace, da mu omogočimo, da razkrije in pridobi vse informacije, ki jih Windows že ponuja ETW.

Več vzorčnih skriptov, ki veljajo za scenarije Windows, lahko najdete tukaj imenik vzorcev.

vir: Microsoft

PRIPOROČANO: Kliknite tukaj, če želite odpraviti težave z operacijskim sistemom Windows in optimizirati delovanje sistema
Windows Feature Experience Pack 120.2212.3030 je na voljo v beta kanalu

Windows Feature Experience Pack 120.2212.3030 je na voljo v beta kanalu

Microsoft je izdal nova različica Windows Feature Experience Pack za insajderje z operacijskim si...

Preberi več

Edge Dev 85.0.564.8 je izšel z novimi funkcijami in popravki

Edge Dev 85.0.564.8 je izšel z novimi funkcijami in popravki

PRIPOROČANO: Kliknite tukaj, če želite odpraviti težave z operacijskim sistemom Windows in optimi...

Preberi več

Microsoft Launcher v6 je zdaj na voljo širši javnosti

Microsoft Launcher v6 je zdaj na voljo širši javnosti

Microsoft je končno izdal svojo aplikacijo Android Launcher različico 6 za potrošnike. Ta nova ra...

Preberi več