Compartir a través de


Biblioteca del entorno de ejecución de la plataforma en modo kernel (PRM) de Windows

El mecanismo de tiempo de ejecución de la plataforma (PRM) es una interfaz basada en GUID que permite a los controladores ejecutar identificadores cargados previamente en el firmware de Unified Extensible Firmware Interface (UEFI). PRM ofrece una funcionalidad similar a las llamadas de interrupción de administración del sistema (SMI) en el modo de administración del sistema (SMM), pero es más segura.

Durante el tiempo de ejecución del sistema, el firmware puede contener varios módulos PRM, cada uno con un conjunto único de identificadores.

Los controladores pueden llamar a identificadores PRM para operaciones de bajo nivel, como controlar componentes de hardware, administrar estados térmicos o administración avanzada de energía.

Siga estos pasos para comprobar la disponibilidad de un identificador específico y ejecutarlo. Puede encontrar una implementación de ejemplo de este proceso en el ejemplo PrmFunc.

  1. Obtenga un puntero a una estructura PRM_INTERFACE llamando a la rutina ExGetPrmInterface. Esta estructura contiene punteros a las rutinas de operación de PRM.

  2. Sincronice con las posibles actualizaciones en tiempo de ejecución del módulo PRM llamando a la rutina PRM_LOCK_MODULE. Las llamadas de bloqueo y desbloqueo son necesarias para la serie transaccional de llamadas del controlador PRM, pero en general se recomienda usarlas.

  3. Compruebe la presencia del controlador PRM especificado mediante la rutina PRM_QUERY_HANDLER.

  4. Si la consulta se realiza correctamente, invoque el controlador PRM llamando a la rutina PRM_INVOKE_HANDLER. Proporcione el GUID y el búfer de parámetros, que deben contener los parámetros del controlador PRM. El parámetro de salida EfiStatus indicará el estado de la invocación del indicador.

  5. Si antes llamó a PRM_LOCK_MODULE, libere el objeto de interfaz PRM llamando a la rutina PRM_UNLOCK_MODULE.

Consulte también

Para obtener más información, consulte la especificación de PRM.