Den næste Windows 10-funktionsopdatering (19H1, opdatering fra april 2019, version 1903) inkluderer support til DTrace, det populære open source-fejlfindings- og diagnosticeringsværktøj. Det er oprindeligt bygget til Solaris og blev tilgængeligt til Linux, FreeBSD, NetBSD og macOS. Microsoft har portet det til Windows.
Annoncering
DTrace er en dynamisk sporingsramme, der giver en administrator eller udvikler mulighed for at få et realtidsbillede af et system enten i bruger- eller kernetilstand. DTrace har et C-stil højt niveau og et kraftigt programmeringssprog, der giver dig mulighed for dynamisk at indsætte sporingspunkter. Ved hjælp af disse dynamisk indsatte sporingspunkter kan du filtrere efter forhold eller fejl, skrive kode for at analysere låsemønstre, registrere blokeringer osv.
ændre itunes backup-placeringsvinduer 10
På Windows udvider DTrace Event Tracing for Windows (ETW), som er statisk og ikke giver mulighed for programmatisk at indsætte sporingspunkter ved kørsel.
Alle API'er og funktioner, der bruges af dtrace.sys, er dokumenterede opkald.
hvordan man får mange point på snapchat
Microsoft har implementeret en speciel driver til Windows 10, der giver mulighed for at udføre en række systemovervågningsroller. Driveren følger med Windows 10 version 1903. DTrace kræver også i øjeblikket, at Windows startes med en kernedebugger aktiveret.
Kildekoden til det porterede DTrace-værktøj er tilgængelig på GitHub. Besøg siden “ DTrace på Windows ”Under OpenDTrace-projektet på GitHub for at se det.
Opsæt DTrace i Windows 10
Forudsætninger for brug af funktionen
- Windows 10 insider bygge 18342 eller højere
- Kun tilgængelig på x64 Windows og registrerer kun sporingsoplysninger til 64-bit processer
- Windows Insider-program er aktiveret og konfigureret med gyldig Windows Insider-konto
- Besøg Indstillinger-> Opdatering og sikkerhed-> Windows Insider-program for detaljer
Instruktioner:
hvor lang tid tager det at slette en uoverensstemmelseskonto
- BCD-konfigurationssæt :
- bcdedit / sæt dtrace til
- Bemærk, du skal indstille bcdedit-indstillingen igen, hvis du opgraderer til en ny Insider-build
- Hent og installer DTrace-pakken fra downloadcenter .
- Dette installerer komponenterne til brugertilstand, drivere og ekstra pakker med funktioner, der er nødvendige for at DTrace skal fungere.
- Valgfrit: Opdater PATH-miljøvariabel at medtage C: Program Files DTrace
- sæt PATH =% PATH%; 'C: Program Files DTrace'
- Opsætning symbolsti
- Opret en ny mappe til caching-symboler lokalt. Eksempel: mkdir c: symboler
- Sæt _NT_SYMBOL_PATH = srv * C: symboler * http://msdl.microsoft.com/download/symbols
- DTrace downloader automatisk de nødvendige symboler fra symbolserveren og cacher til den lokale sti.
- Valgfri: Opsæt kernedebugger forbindelse til målmaskinen ( MSDN-link ). Dette er kun krævet, hvis du vil spore kernehændelser ved hjælp af FBT eller andre udbydere.
- Bemærk, at du bliver nødt til at deaktivere Secureboot og Bitlocker på C :, (hvis aktiveret), hvis du vil konfigurere en kerne-fejlfinding.
- Genstart målmaskine
Brug af DTrace
- Åbn en forhøjet kommandoprompt .
- Udfør en af følgende kommandoer:
# Oversigt over skyskal efter program i 5 sekunder: dtrace -Fn 'tick-5sec {exit (0);} syscall ::: entry {@num [pid, execname] = count ();}' # Opsummer timersæt / annuller program i 3 sekunder: dtrace -Fn 'tick-3sec {exit (0);} syscall :: Nt * Timer *: post {@ [probefunc, execname, pid] = count ();}' # Dump System Process kernel structure: (kræver, at der indstilles symbolsti) dtrace -n 'BEGIN {print (* (struct nt`_EPROCESS *) nt`PsInitialSystemProcess); exit (0);}' # Sporing af stier gennem NTFS, når du kører notepad.exe (kræver KD a
Kommandoen dtrace -lvn syscall ::: vil liste alle sonder og deres parametre tilgængelige fra syscall-udbyderen.
Følgende er nogle af de udbydere, der er tilgængelige på Windows, og hvad de instrumenterer.
- syscall - NTOS-systemopkald
- fbt (Funktionsgrænsesporing) - Kernefunktionens indtastning og returnering
- pid - Sporing af brugertilstandsproces. Ligesom kernel-mode FBT, men tillader også instrumentering af vilkårlige funktionsforskydninger.
- sth (Event Tracing for Windows) - Tillader, at sonder defineres for ETW. Denne udbyder hjælper med at udnytte eksisterende operativsysteminstrumentering i DTrace.
- Dette er en tilføjelse, vi har gjort til DTrace for at give det mulighed for at eksponere og få alle de oplysninger, som Windows allerede indeholder ETW .
Flere eksempler på scripts, der gælder for Windows-scenarier, kan findes i dette eksempler på biblioteket .
Kilde: Microsoft