Impostazione dei boost di priorità durante il completamento delle richieste di I/O
Quando un driver completa una richiesta di I/O, può chiamare WdfRequestCompleteWithPriorityBoost per specificare un valore usato dal sistema per aumentare la priorità di runtime del thread che ha richiesto l'operazione di I/O.
Se il driver chiama WdfRequestComplete o WdfRequestCompleteWithInformation anziché WdfRequestCompleteWithPriorityBoost, il framework usa un valore di boost di priorità predefinito basato sul tipo di dispositivo. Nella tabella seguente sono elencati i valori di priorità di priorità predefiniti usati dal framework. Le costanti di priorità e tipo di dispositivo vengono definite in Wdm.h.
Tipo di dispositivo | Boost priorità predefinita |
---|---|
FILE_DEVICE_UNDEFINED | IO_NO_INCREMENT |
FILE_DEVICE_BEEP | IO_NO_INCREMENT |
FILE_DEVICE_CD_ROM | IO_CD_ROM_INCREMENT |
FILE_DEVICE_CD_ROM_FILE_SYSTEM | IO_CD_ROM_INCREMENT |
FILE_DEVICE_CONTROLLER | IO_NO_INCREMENT |
FILE_DEVICE_DATALINK | IO_NO_INCREMENT |
FILE_DEVICE_DFS | IO_NO_INCREMENT |
FILE_DEVICE_DISK | IO_DISK_INCREMENT |
FILE_DEVICE_DISK_FILE_SYSTEM | IO_DISK_INCREMENT |
FILE_DEVICE_FILE_SYSTEM | IO_NO_INCREMENT |
FILE_DEVICE_INPORT_PORT | IO_NO_INCREMENT |
FILE_DEVICE_KEYBOARD | IO_KEYBOARD_INCREMENT |
FILE_DEVICE_MAILSLOT | IO_MAILSLOT_INCREMENT |
FILE_DEVICE_MIDI_IN | IO_SOUND_INCREMENT |
FILE_DEVICE_MIDI_OUT | IO_SOUND_INCREMENT |
FILE_DEVICE_MOUSE | IO_MOUSE_INCREMENT |
FILE_DEVICE_MULTI_UNC_PROVIDER | IO_NO_INCREMENT |
FILE_DEVICE_NAMED_PIPE | IO_NAMED_PIPE_INCREMENT |
FILE_DEVICE_NETWORK | IO_NETWORK_INCREMENT |
FILE_DEVICE_NETWORK_BROWSER | IO_NETWORK_INCREMENT |
FILE_DEVICE_NETWORK_FILE_SYSTEM | IO_NETWORK_INCREMENT |
FILE_DEVICE_NULL | IO_NO_INCREMENT |
FILE_DEVICE_PARALLEL_PORT | IO_PARALLEL_INCREMENT |
FILE_DEVICE_PHYSICAL_NETCARD | IO_NETWORK_INCREMENT |
FILE_DEVICE_PRINTER | IO_NO_INCREMENT |
FILE_DEVICE_SCANNER | IO_NO_INCREMENT |
FILE_DEVICE_SERIAL_MOUSE_PORT | IO_SERIAL_INCREMENT |
FILE_DEVICE_SERIAL_PORT | IO_SERIAL_INCREMENT |
FILE_DEVICE_SCREEN | IO_VIDEO_INCREMENT |
FILE_DEVICE_SOUND | IO_SOUND_INCREMENT |
FILE_DEVICE_STREAMS | IO_SOUND_INCREMENT |
FILE_DEVICE_TAPE | IO_NO_INCREMENT |
FILE_DEVICE_TAPE_FILE_SYSTEM | IO_NO_INCREMENT |
FILE_DEVICE_TRANSPORT | IO_NO_INCREMENT |
FILE_DEVICE_UNKNOWN | IO_NO_INCREMENT |
FILE_DEVICE_VIDEO | IO_VIDEO_INCREMENT |
FILE_DEVICE_VIRTUAL_DISK | IO_DISK_INCREMENT |
FILE_DEVICE_WAVE_IN | IO_SOUND_INCREMENT |
FILE_DEVICE_WAVE_OUT | IO_SOUND_INCREMENT |
FILE_DEVICE_8042_PORT | IO_KEYBOARD_INCREMENT |
FILE_DEVICE_NETWORK_REDIRECTOR | IO_NETWORK_INCREMENT |
FILE_DEVICE_BATTERY | IO_NO_INCREMENT |
FILE_DEVICE_BUS_EXTENDER | IO_NO_INCREMENT |
FILE_DEVICE_MODEM | IO_SERIAL_INCREMENT |
FILE_DEVICE_VDM | IO_NO_INCREMENT |
FILE_DEVICE_MASS_STORAGE | IO_DISK_INCREMENT |
FILE_DEVICE_SMB | IO_NETWORK_INCREMENT |
FILE_DEVICE_KS | IO_SOUND_INCREMENT |
FILE_DEVICE_CHANGER | IO_NO_INCREMENT |
FILE_DEVICE_SMARTCARD | IO_NO_INCREMENT |
FILE_DEVICE_ACPI | IO_NO_INCREMENT |
FILE_DEVICE_DVD | IO_NO_INCREMENT |
FILE_DEVICE_FULLSCREEN_VIDEO | IO_VIDEO_INCREMENT |
FILE_DEVICE_DFS_FILE_SYSTEM | IO_NO_INCREMENT |
FILE_DEVICE_DFS_VOLUME | IO_NO_INCREMENT |
FILE_DEVICE_SERENUM | IO_SERIAL_INCREMENT |
FILE_DEVICE_TERMSRV | IO_NO_INCREMENT |
FILE_DEVICE_KSEC | IO_NO_INCREMENT |
FILE_DEVICE_FIPS | IO_NO_INCREMENT |
FILE_DEVICE_INFINIBAND | IO_NO_INCREMENT |