CPU-sets
CPU-sets bieden API's voor het declareren van toepassingsaffiniteit op een 'zachte' manier die compatibel is met energiebeheer van het besturingssysteem. Bovendien biedt de API toepassingen de mogelijkheid om alle achtergrondthreads in het proces opnieuw te koppelen aan een subset van processors met behulp van het standaardmechanisme proces om interferentie van besturingssysteemthreads binnen het proces te voorkomen. Sommige versies van Windows ondersteunen kernreserveringsbeleid, waarin een subset van de CPU-sets van het systeem kan worden besteed aan het exclusieve gebruik van afzonderlijke toepassingen en workloads.
De CPU Set-API werkt met CPU-set-id's, die zijn gekoppeld aan affiniteiten met virtuele processor. Op de meeste systemen en onder de meeste omstandigheden wordt elke CPU-set-id rechtstreeks toegewezen aan één thuis logische processor. Een thread die is geaffineerd met een bepaalde CPU-set, wordt doorgaans uitgevoerd op een van de processors in de lijst met geselecteerde CPU-set-id's.
CPU-sets die zijn gereserveerd, kunnen worden bepaald door de vlag Toegewezen in de SYSTEM_CPU_SET_INFORMATION te controleren. Het systeem beheert de toegang tot gereserveerde CPU-sets en de toewijzing kan worden opgevraagd met behulp van de AllocatedToTargetProcess vlag van de SYSTEM_CPU_SET_INFORMATION-structuur. Als een proces probeert een TOEWIJZING van een CPU-set te gebruiken die uitsluitend aan andere processen wordt toegewezen, wordt de aanvraag genegeerd en worden threads die zijn toegewezen aan niet-toegestane CPU-sets elders gepland. CPU-sets kunnen op twee niveaus worden toegewezen. De standaard-CPU-sets proces worden toegewezen aan alle threads in een proces dat geen toewijzing heeft op het geselecteerde niveau Thread. Als een thread of proces een beperkende affiniteitsmaskerset heeft ingesteld, wordt het affiniteitsmasker gerespecteerd boven elke conflicterende TOEWIJZING van de CPU-set. Op systemen met meerdere groepen worden CPU-toewijzingen genegeerd als ze zich in groepen bevinden die niet overeenkomen met de groep in het affiniteitsmasker van de thread. Als een thread is toegewezen aan meerdere geldige CPU-sets, wordt deze uitgevoerd op een van de bijbehorende processors op basis van de prioriteiten en de prioriteiten van concurrerende threads op deze processors.
functies/opsommingen/structuren van de CPU-set
- functie GetProcessDefaultCpuSet s
- Functie GetProcessDefaultCpuSetMas ks
- functie GetSystemCpuSetInformation
- functie GetThreadSelectedCpuSet s
- Functie GetThreadSelectedCpuSetMas ks
- functie SetProcessDefaultCpuSets
- functie SetProcessDefaultCpuSetMasks
- functie SetThreadSelectedCpuSets
- functie SetThreadSelectedCpuSetMas ks
- opsomming CPU_SET_INFORMATION_TYPE
- SYSTEM_CPU_SET_INFORMATION structuur