Den neste Windows 10-funksjonsoppdateringen (19H1, april 2019-oppdatering, versjon 1903) inkluderer støtte for DTrace, det populære feilsøkings- og diagnostiske verktøyet for åpen kildekode. Den ble opprinnelig bygget for Solaris, og ble tilgjengelig for Linux, FreeBSD, NetBSD og macOS. Microsoft har portet det til Windows.
Annonse
DTrace er et dynamisk sporingsrammeverk som lar en administrator eller utvikler få en sanntids titt på et system enten i bruker- eller kjernemodus. DTrace har et C-stil høyt nivå og kraftig programmeringsspråk som lar deg dynamisk sette inn sporingspunkter. Ved hjelp av disse dynamisk innsatte sporingspunktene kan du filtrere på forhold eller feil, skrive kode for å analysere låsemønstre, oppdage låsemetoder osv.
hvorfor vil ikke PCen min sove
På Windows utvider DTrace Event Tracing for Windows (ETW), som er statisk og ikke gir muligheten til å programmere inn sporingspunkter ved kjøretid.
Alle API-er og funksjonalitet som brukes av dtrace.sys er dokumenterte samtaler.
hvordan du slipper pin i google maps
Microsoft har implementert en spesiell driver for Windows 10 som tillater å utføre en rekke systemovervåkingsroller. Driveren vil bli inkludert i Windows 10 versjon 1903. DTrace krever for øyeblikket at Windows skal startes med en kjernedebugger aktivert.
Kildekoden for det portede DTrace-verktøyet er tilgjengelig på GitHub. Besøk siden “ DTrace på Windows ”Under OpenDTrace-prosjektet på GitHub for å se det.
Konfigurer DTrace i Windows 10
Forutsetninger for bruk av funksjonen
- Windows 10-innsider bygge 18342 eller høyere
- Bare tilgjengelig på x64 Windows og registrerer sporingsinformasjon bare for 64-biters prosesser
- Windows Insider-program er aktivert og konfigurert med gyldig Windows Insider-konto
- Gå til Innstillinger-> Oppdatering og sikkerhet-> Windows Insider-program for detaljer
Bruksanvisning:
hvordan du bruker kodi for android
- BCD-konfigurasjonssett :
- bcdedit / sett dtrace på
- Merk at du må angi alternativet bcdedit igjen, hvis du oppgraderer til en ny Insider-build
- nedlasting og installer DTrace-pakken fra nedlastingssenter .
- Dette installerer komponentene for brukermodus, drivere og ekstra funksjoner på forespørsel som er nødvendige for at DTrace skal være funksjonell.
- Valgfritt: Oppdater PATH-miljøvariabel å inkludere C: Program Files DTrace
- sett PATH =% PATH%; 'C: Program Files DTrace'
- Oppsett symbolsti
- Opprett en ny katalog for hurtigbufring av symboler lokalt. Eksempel: mkdir c: symboler
- Sett _NT_SYMBOL_PATH = srv * C: symboler * http://msdl.microsoft.com/download/symbols
- DTrace laster automatisk ned de nødvendige symbolene fra symbolserveren og cacher til den lokale banen.
- Valgfri: Konfigurer kjernedebugger tilkobling til målmaskinen ( MSDN-kobling ). Dette er kun kreves hvis du vil spore kjernearrangementer ved hjelp av FBT eller andre leverandører.
- Vær oppmerksom på at du må deaktivere Secureboot og Bitlocker på C :, (hvis aktivert), hvis du vil konfigurere en kjerndebugger.
- Start på nytt målmaskin
Bruke DTrace
- Åpne en forhøyet ledetekst .
- Utfør en av følgende kommandoer:
# Syscall-sammendrag etter program i 5 sekunder: dtrace -Fn 'tick-5sec {exit (0);} syscall ::: entry {@num [pid, execname] = count ();}' # Oppsummer timersett / avbryt program i 3 sekunder: dtrace -Fn 'tick-3sec {exit (0);} syscall :: Nt * Timer *: entry {@ [probefunc, execname, pid] = count ();}' # Dump System Process kernel structure: (krever at symbolbane skal angis) dtrace -n 'BEGIN {print (* (struct nt`_EPROCESS *) nt`PsInitialSystemProcess); exit (0);}' # Spore baner gjennom NTFS når du kjører notepad.exe (krever KD a
Kommandoen dtrace -lvn syscall ::: vil liste opp alle sonder og parametere som er tilgjengelige fra syscall-leverandøren.
Følgende er noen av leverandørene som er tilgjengelige på Windows og hva de instrumenterer.
- syscall - NTOS-systemanrop
- fbt (Funksjonsgrensesporing) - Oppføring og retur av kjernefunksjonen
- pid - Sporing av brukermodus. Som kjernemodus FBT, men tillater også instrumentering av vilkårlige funksjonsforskyvninger.
- sth (Event Tracing for Windows) - Tillater at sonder defineres for ETW. Denne leverandøren hjelper med å utnytte eksisterende operativsysteminstrumentering i DTrace.
- Dette er et tillegg vi har gjort til DTrace for å la det eksponere og få all informasjonen som Windows allerede gir i ETW .
Flere eksempler på skript som gjelder for Windows-scenarier, finner du i dette eksempler katalog .
Kilde: Microsoft