De volgende Windows 10-functie-update (19H1, update van april 2019, versie 1903) bevat ondersteuning voor DTrace, de populaire open source-tool voor foutopsporing en diagnose. Het is oorspronkelijk gebouwd voor Solaris en is beschikbaar gekomen voor Linux, FreeBSD, NetBSD en macOS. Microsoft heeft het overgezet naar Windows.
Advertentie
DTrace is een dynamisch traceringsraamwerk waarmee een beheerder of ontwikkelaar in realtime een systeem kan bekijken in gebruikers- of kernelmodus. DTrace heeft een krachtige programmeertaal op hoog niveau in C-stijl waarmee u dynamisch traceerpunten kunt invoegen. Met behulp van deze dynamisch ingevoegde traceerpunten kunt u filteren op condities of fouten, code schrijven om vergrendelingspatronen te analyseren, deadlocks op te sporen, enz.
wat betekent rode stip op onenigheid?
Op Windows breidt DTrace Event Tracing for Windows (ETW) uit, wat statisch is en niet de mogelijkheid biedt om traceringspunten programmatisch in te voegen tijdens runtime.
Alle API's en functionaliteit die door dtrace.sys worden gebruikt, zijn gedocumenteerde aanroepen.
hoe bekijk ik alleen ongelezen berichten in gmail
Microsoft heeft een speciaal stuurprogramma voor Windows 10 geïmplementeerd waarmee een aantal systeembewakingsfuncties kan worden uitgevoerd. Het stuurprogramma wordt meegeleverd met Windows 10 versie 1903. Bovendien vereist DTrace momenteel dat Windows wordt gestart met een geactiveerde kernel debugger.
De broncode voor de geporteerde DTrace-tool is beschikbaar op GitHub. Bezoek de pagina ' DTrace op Windows ”Onder het OpenDTrace-project op GitHub om het te zien.
Stel DTrace in Windows 10 in
Vereisten voor het gebruik van de functie
- Windows 10 insider bouwen 18342 of hoger
- Alleen beschikbaar op x64 Windows en legt alleen traceringsinformatie vast voor 64-bits processen
- Windows Insider-programma is ingeschakeld en geconfigureerd met een geldig Windows Insider-account
- Bezoek Instellingen-> Update en beveiliging-> Windows Insider-programma voor meer informatie
Instructies:
hoe iemand een bericht te sturen op YouTube 2019
- BCD-configuratieset :
- bcdedit / zet dtrace aan
- Let op: je moet de optie bcdedit opnieuw instellen als je een upgrade naar een nieuwe Insider-build uitvoert
- Downloaden en installeer het DTrace-pakket van download Centrum .
- Dit installeert de componenten van de gebruikersmodus, stuurprogramma's en aanvullende feature on demand-pakketten die nodig zijn om DTrace te laten functioneren.
- Optioneel: werk het PATH omgevingsvariabele op te nemen C: Program Files DTrace
- set PATH =% PATH%; 'C: Program Files DTrace'
- Opstelling symbool pad
- Maak een nieuwe map voor het lokaal cachen van symbolen. Voorbeeld: mkdir c: symbolen
- Set _NT_SYMBOL_PATH = srv * C: symbolen * http://msdl.microsoft.com/download/symbols
- DTrace downloadt automatisch de benodigde symbolen van de symbolenserver en caches naar het lokale pad.
- Optioneel: Stel Kernel-debugger in verbinding met de doelmachine ( MSDN-koppeling ). Dit is enkel en alleen vereist als u kernelgebeurtenissen wilt traceren met FBT of andere providers.
- Merk op dat u Secureboot en Bitlocker op C :, (indien ingeschakeld) moet uitschakelen als u een kerneldebugger wilt instellen.
- Start opnieuw op doelmachine
DTrace gebruiken
- Open een verhoogde opdrachtprompt .
- Voer een van de volgende opdrachten uit:
# Syscall samenvatting per programma gedurende 5 seconden: dtrace -Fn 'tick-5sec {exit (0);} syscall ::: entry {@num [pid, execname] = count ();}' # Samenvatten timer instellen / annuleren programma gedurende 3 seconden: dtrace -Fn 'tick-3sec {exit (0);} syscall :: Nt * Timer *: entry {@ [probefunc, execname, pid] = count ();}' # Dump System Process kernelstructuur: (vereist dat symboolpad wordt ingesteld) dtrace -n 'BEGIN {print (* (struct nt`_EPROCESS *) nt`PsInitialSystemProcess); exit (0);}' # Traceren van paden via NTFS bij het uitvoeren van notepad.exe (vereist KD een
Het bevel dtrace -lvn syscall ::: zal alle sondes en hun parameters weergeven die beschikbaar zijn bij de syscall-provider.
Hieronder volgen enkele van de providers die beschikbaar zijn op Windows en wat ze gebruiken.
- syscall - NTOS-systeemoproepen
- fbt (Function Boundary Tracing) - Kernelfunctie invoeren en retourneren
- pid - Tracering van processen in gebruikersmodus. Zoals kernel-modus FBT, maar ook de instrumentatie van willekeurige functie-offsets.
- sth (Event Tracing voor Windows) - Maakt het mogelijk om sondes te definiëren voor ETW. Deze provider helpt om bestaande instrumentatie van het besturingssysteem in DTrace te gebruiken.
- Dit is een toevoeging die we hebben gedaan aan DTrace om het alle informatie die Windows al biedt, bloot te leggen en te verkrijgen ETW .
Hier vindt u meer voorbeeldscripts die van toepassing zijn op Windows-scenario's voorbeelden directory .
Bron: Microsoft