| Softwaregeek

Hoewel de update van Windows 10 mei 2019 niet veel kritieke problemen heeft veroorzaakt en de uitrol ook soepel verliep in vergelijking met die van de vorige versie, is de nieuwste update niet vrij van fouten. DPC latentie was een van de problemen waarmee de nieuwste Windows-versie van Windows 10 te maken had en waarover gebruikers sinds de komst van de update rapporteerden.

| Softwaregeek

Nu wat goed nieuws. De nieuwste cumulatieve update KB4505903 van Microsoft, die eergisteren voor het publiek is uitgerold , heeft voor Windows 10 1903 (di Windows 10 mei 2019-update) een oplossing voor het DPC-latentie probleem toegevoegd. Interessant genoeg heeft Microsoft het niet genoemd in hun lijst met opgeloste problemen.

Voor degenen die het niet weten, is DPC, wat staat voor Deferred Procedure Call, een onderdeel van het Windows-systeem dat zorgt voor de efficiëntie van het stuurprogramma. Pieken van hoge DPC-latentie kunnen ervoor zorgen dat uw audio-interface-stuurprogramma op tijd reageert, wat op zijn beurt vervorming van audio veroorzaakt.

Uitgestelde procedure-oproep

Een Deferred Procedure Call ( DPC ) is een Microsoft Windows- besturingssysteem waarmee taken met een hoge prioriteit (bijvoorbeeld: een interrupt-handler ) vereiste taken met een lagere prioriteit kunnen uitstellen voor latere uitvoering. Hierdoor kunnen stuurprogramma’s en andere gebruikers van evenementen op laag niveau het hoge prioriteitsdeel van hun verwerking snel uitvoeren en niet-kritieke aanvullende verwerking plannen voor uitvoering met een lagere prioriteit.

DPC’s worden geïmplementeerd door DPC-objecten die door de kernel worden gemaakt en geïnitialiseerd wanneer een apparaat stuurprogramma of een ander kernel modusprogramma aanvragen voor DPC indient. Het DPC-verzoek wordt vervolgens toegevoegd aan het einde van een DPC- wachtrij . Elke processor heeft een afzonderlijke DPC-wachtrij. DPC’s hebben drie prioriteitsniveaus: laag, gemiddeld en hoog. Standaard zijn alle DPC’s ingesteld op gemiddelde prioriteit. Wanneer Windows daalt naar een IRQL van Dispatch / DPC-niveau, controleert het de DPC-wachtrij op eventuele DPC’s in uitvoering en voert deze uit totdat de wachtrij leeg is of een andere onderbreking met een hogere IRQL optreedt.

Wanneer bijvoorbeeld de klokonderbreking wordt gegenereerd, verhoogt de klok onderbrekingshandler in het algemeen de teller van de huidige thread om de totale uitvoeringstijd van die thread te berekenen, en verlaagt de resterende kwantumtijd met 1. Wanneer de teller naar nul daalt, wordt de thread scheduler moet worden aangeroepen om de volgende thread te kiezen die op die processor en dispatcher moet worden uitgevoerd om een ​​context-switch uit te voeren. Aangezien de klokonderbreking plaatsvindt bij een veel hogere IRQL, is het wenselijk om deze thread dispatching uit te voeren, wat een minder kritische taak is op een later tijdstip wanneer de IRQL van de processor zakt. De klok onderbrekingshandler vraagt ​​dus om een ​​DPC-object en voegt dit toe aan het einde van de DPC-wachtrij die de verzending zal verwerken wanneer de IRQL van de processor daalt naar DPC / Dispatch-niveau.

Bij het werken met streaming audio of video die interrupts gebruikt, worden DPC’s gebruikt om de audio in elke buffer te verwerken terwijl ze streamen. Als een andere DPC (van een slecht geschreven stuurprogramma) te lang duurt en een andere interrupt een nieuwe gegevensbuffer genereert, voordat de eerste kan worden verwerkt, een drop-out resultaten.

Definitie Deferred Procedure Call ( DPC ) Microsoft:

uitgestelde procedure-oproep (DPC)Een aanroep in de wachtrij voor een kernel modusfunctie die meestal op een later tijdstip wordt uitgevoerd. DPC’s worden door stuurprogramma’s gebruikt om I / O-bewerkingen te plannen die niet in een ISR met een hoge IRQL hoeven te plaats vinden en kunnen in plaats daarvan veilig worden uitgesteld totdat de IRQL van de processor is verlaagd.

Zie het onderwerp DPC-objecten en DPC’s voor meer informatie .

DPC’s kunnen ook worden gebruikt met timers. Zie het onderwerp Timerobjecten en DPC’s voor meer informatie .

Als uw pc wordt geconfronteerd met het DPC latentie probleem, moet u de cumulatieve update installeren door naar de app Instellingen te gaan en te controleren op updates , anders kunt u de nieuwste cumulatieve update handmatig downloaden vanaf hier .

Pin It on Pinterest