Compartir a través de


Función KeRestoreExtendedProcessorState (wdm.h)

El KeRestoreExtendedProcessorState rutina restaura la información de estado de procesador extendida que se guardó anteriormente.

Sintaxis

void KeRestoreExtendedProcessorState(
  [in] PXSTATE_SAVE XStateSave
);

Parámetros

[in] XStateSave

Puntero a una estructura de XSTATE_SAVE que contiene la información de estado del procesador extendida que se va a restaurar. El contenido de esta estructura debe haber sido guardado previamente por la rutina KeSaveExtendedProcessorState.

Valor devuelto

Ninguno

Observaciones

El código del controlador en modo kernel debe asegurarse de que las llamadas a keSaveExtendedProcessorState y keRestoreExtendedProcessorState estén anidadas correctamente. Esto es necesario para que, en cada nivel de anidamiento, el estado restaurado por el KeRestoreExtendedProcessorState llamada es el mismo estado que guardó el correspondiente KeSaveExtendedProcessorState llamada. Para garantizar un anidamiento adecuado, el código del controlador en modo kernel debe seguir estas reglas:

  • Una llamada KeRestoreExtendedProcessorState que restaura un estado guardado debe ejecutarse en el mismo IRQL que el KeSaveExtendedProcessorState llamada que guardó el estado.
  • Si un par de KeSaveExtendedProcessorState y llamadas KeRestoreExtendedProcessor State se anida dentro de un par de KeSaveExtendedProcessorState y llamadas a KeRestoreExtendedProcessorState, IRQL para las llamadas anidadas no debe ser inferior a IRQL para las llamadas circundantes.
  • Normalmente, la estructura de XSTATE_SAVE asignada por el autor de la llamada que contiene el estado guardado por KeSaveExtendedProcessorState reside en la pila. La pila conserva naturalmente el anidamiento de la información de estado guardada. Si el código del controlador almacena el estado en una ubicación distinta de la pila, el escritor de controladores debe tener especial cuidado para conservar el anidamiento de las llamadas KeSaveExtendedProcessorState y KeRestoreExtendedProcessorState.
  • La llamada KeRestoreExtendedProcessorState que restaura un estado guardado debe ejecutarse en el mismo subproceso que el KeSaveExtendedProcessorState llamada que guardó el estado.
Se aplica un conjunto similar de reglas a las rutinas de keSaveFloatingPointState y KeRestoreFloatingPointState.

Requisitos

Requisito Valor
cliente mínimo admitido Disponible en Windows 7 y versiones posteriores de Windows.
de la plataforma de destino de Universal
encabezado de wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
biblioteca de NtosKrnl.lib
DLL de NtosKrnl.exe
irQL <= DISPATCH_LEVEL (consulte la sección Comentarios)

Consulte también

keRestoreFloatingPointState

KeSaveExtendedProcessorState

KeSaveFloatingPointState

XSTATE_SAVE