Windows Tips & News

DTrace je sada dostupan u sustavu Windows

click fraud protection

Sljedeće ažuriranje značajke Windows 10 (19H1, ažuriranje travnja 2019., verzija 1903) uključivat će podršku za DTrace, popularni alat za otklanjanje pogrešaka i dijagnostiku otvorenog koda. Izvorno je napravljen za Solaris, a postao je dostupan za Linux, FreeBSD, NetBSD i macOS. Microsoft ga je prenio na Windows.

DTrace je dinamički okvir za praćenje koji administratoru ili programeru omogućuje uvid u sustav u stvarnom vremenu u korisničkom ili kernel načinu rada. DTrace ima visoku razinu i moćan programski jezik u C stilu koji vam omogućuje dinamičko umetanje točaka praćenja. Koristeći ove dinamički umetnute točke praćenja, možete filtrirati uvjete ili pogreške, napisati kod za analizu uzoraka zaključavanja, otkriti zastoje itd.

U sustavu Windows, DTrace proširuje praćenje događaja za Windows (ETW) koje je statično i ne pruža mogućnost programskog umetanja točaka praćenja tijekom izvođenja.

Svi API-ji i funkcionalnosti koje koristi dtrace.sys su dokumentirani pozivi.

Microsoft je implementirao poseban upravljački program za Windows 10 koji omogućuje obavljanje niza uloga nadzora sustava. Upravljački program će biti uključen u Windows 10 verziju 1903. Također, DTrace trenutno zahtijeva pokretanje sustava Windows s uključenim programom za ispravljanje pogrešaka kernela.

Izvorni kod za portirani alat DTrace dostupan je na GitHubu. Posjetite stranicu “DTrace u sustavu Windows” u okviru projekta OpenDTrace na GitHubu da biste ga vidjeli.

Postavite DTrace u sustavu Windows 10

Preduvjeti za korištenje značajke

  • Windows 10 insajder gradnja 18342 ili više
  • Dostupno samo na x64 Windows i bilježi podatke o praćenju samo za 64-bitne procese
  • Program Windows Insider je omogućeno i konfiguriran s važećim računom Windows Insider.
    • Posjetite Postavke->Ažuriranje i sigurnost->Windows Insider Program za detalje

Upute:

  1. BCD konfiguracijski set:
    1. bcdedit /postavi dtrace na
    2. Napomena, morate ponovno postaviti opciju bcdedit ako nadogradite na novu verziju Insidera
  2. preuzimanje datoteka i instalirajte DTrace paket iz centar za preuzimanje.
    1. Time se instaliraju komponente korisničkog načina rada, upravljački programi i paketi dodatnih značajki na zahtjev potrebni da bi DTrace bio funkcionalan.
  3. Izborno: ažurirajte PATH varijabla okruženja uključiti C:\Program Files\DTrace
    1. postavite PATH=%PATH%;"C:\Program Files\DTrace"
  4. Postaviti put simbola
    1. Stvorite novi direktorij za lokalno keširanje simbola. Primjer: mkdir c:\symbols
    2. Set _NT_SYMBOL_PATH=srv*C:\symbols*http://msdl.microsoft.com/download/symbols
    3. DTrace automatski preuzima potrebne simbole s poslužitelja simbola i sprema na lokalni put.
  5. Izborno:Postavite program za ispravljanje pogrešaka kernela veza s ciljnim strojem (MSDN veza). Ovo je samo potrebno ako želite pratiti Kernel događaje koristeći FBT ili druge davatelje usluga.
    1. Imajte na umu da ćete morati onemogućiti Secureboot i Bitlocker na C:, (ako je omogućen), ako želite postaviti program za ispravljanje pogrešaka kernela.
  6. Ponovno podizanje sustava ciljni stroj

Korištenje DTrace

  1. Otvorite an povišeni naredbeni redak.
  2. Izvršite jednu od sljedećih naredbi:
    # Sažetak Syscall po programu u trajanju od 5 sekundi: dtrace -Fn "tick-5sec { exit (0);} syscallentry{ @num[pid, execname] = count();} " # Sažeti program za postavljanje/otkazivanje timera za 3 sekundi: dtrace -Fn "tick-3sec { exit (0);} syscall:: Nt*Timer*:entry { @[probefunc, execname, pid] = count();}" # Dump Struktura kernela procesa sustava: (zahtijeva put simbola do biti postavljen) dtrace -n "BEGIN{print(*(struct nt`_EPROCESS *) nt`PsInitialSystemProcess);exit (0);}" # Praćenje staza kroz NTFS prilikom pokretanja notepad.exe (zahtijeva KD a

Zapovijed dtrace -lvn sistemski poziv navest će sve sonde i njihove parametre dostupne od davatelja sistemskog poziva.

Sljedeći su neki od pružatelja usluga dostupnih u sustavu Windows i što oni instrumentiraju.

  • sistemski poziv – NTOS sistemski pozivi
  • fbt (Praćenje granica funkcije) – Unos i vraćanje funkcije jezgre
  • pid – Praćenje procesa u korisničkom načinu rada. Kao i FBT u načinu kernela, ali također dopušta instrumentaciju proizvoljnih odstupanja funkcija.
  • etw (Praćenje događaja za Windows) – Omogućuje definiranje probe za ETW Ovaj pružatelj pomaže u korištenju postojeće instrumentacije operacijskog sustava u DTraceu.
    • Ovo je jedan dodatak koji smo napravili za DTrace kako bismo mu omogućili da izloži i dobije sve informacije koje Windows već pruža ETW.

Više primjera skripti primjenjivih za Windows scenarije možete pronaći u ovome imenik uzoraka.

Izvor: Microsoft

Izdan PowerToys Preview 0.24 s popravcima za utišavanje videokonferencije

Izdan PowerToys Preview 0.24 s popravcima za utišavanje videokonferencije

Ostavite odgovorNovo eksperimentalno izdanje PowerToysa dostupno je za preuzimanje. Verzija 0.24 ...

Čitaj više

Windows 10 Build 19042.450 (20H2, Beta kanal) dostupan je upućenima

Windows 10 Build 19042.450 (20H2, Beta kanal) dostupan je upućenima

Ostavite odgovorMicrosoft je izdao novu verziju sustava Windows 10 za Insiders na beta kanalu (ra...

Čitaj više

Windows 10 Build 20190 (Dev Channel)

Windows 10 Build 20190 (Dev Channel)

Microsoft je izdao Windows 10 Insider Preview Build 20190 za Dev Channel Insiders. Ova je verzija...

Čitaj više