Diagnósticos y depuración
RDBSS proporciona una serie de rutinas para fines de diagnóstico y depuración. Estas rutinas se dividen en dos categorías:
Rutinas de aserción y depuración
Rutinas de seguimiento de referencia y desreferencia
Estas rutinas incluyen los elementos de la tabla siguiente.
Rutina | Descripción |
---|---|
Esta rutina envía una cadena de aserción en compilaciones activadas de RDBSS a un depurador de kernel si se instala una. Cuando se usa el archivo de inclusión rxAssert.h, las llamadas rtlAssert del kernel de Windows también se redefinirán para llamar a esta rutina RxAssert . En el caso de las compilaciones comerciales, las llamadas a esta rutina comprobarán los errores. |
|
Esta rutina genera una excepción que controla el depurador de kernel si se instala una; de lo contrario, se controla mediante el sistema de depuración. |
|
Esta rutina se usa para realizar un seguimiento de una solicitud para hacer referencia a estructuras de SRV_CALL, NET_ROOT, V_NET_ROOT, FOBX, FCB y SRV_OPEN en compilaciones comprobadas. El sistema de registro y WMI pueden acceder a un registro de estas solicitudes de referencia. Esta rutina no realiza la operación de desreferencia. Para las compilaciones comerciales, esta rutina no hace nada. |
|
Esta rutina se usa para realizar un seguimiento de una solicitud para desreferenciar SRV_CALL, NET_ROOT, V_NET_ROOT, FOBX, FCB y estructuras de SRV_OPEN en compilaciones comprobadas. El sistema de registro y WMI pueden acceder a un registro de estas solicitudes de desreferencia. Esta rutina no realiza la operación de referencia. Para las compilaciones comerciales, esta rutina no hace nada. |
Además de las rutinas enumeradas en la tabla anterior, se definen varias macros que llaman a estas rutinas para la depuración. Estas macros, que se enumeran en la tabla siguiente, proporcionan un contenedor alrededor de las rutinas RxReference o RxDereference usadas para las operaciones de administración de estructuras de archivos en SRV_CALL, NET_ROOT, V_NET_ROOT, FOBX, FCB y estructuras de SRV_OPEN. Estas macros llaman primero a la rutina RxpTrackReference o RxpTrackDereference correspondiente para registrar información de diagnóstico antes de llamar a la rutina RxReference o RxDeference correspondiente. El sistema de registro de RDBSS y WMI puede acceder a un registro de las solicitudes de referencia y desreferencia.
Macro | Descripción |
---|---|
RxDereferenceAndFinalizeNetFcb (Fcb ,RxContext, RecursiveFinalize, ForceFinalize) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras FCB. Tenga en cuenta que esta macro manipula el recuento de referencias y también devuelve el estado de la llamada finalize. |
RxDereferenceNetFcb (Fcb) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras FCB. Tenga en cuenta que esta macro manipula el recuento de referencias y también devuelve el estado de la llamada de desreferencia final. |
RxDereferenceNetFobx (Fobx,LockHoldingState) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras FOBX. |
RxDereferenceNetRoot (NetRoot, LockHoldingState) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras de NET_ROOT. |
RxDereferenceSrvCall (SrvCall, LockHoldingState) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras de SRV_CALL. |
RxDereferenceSrvOpen ( SrvOpen, LockHoldingState) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras de SRV_OPEN. |
RxDereferenceVNetRoot ( VNetRoot, LockHoldingState) |
Esta macro se usa para realizar un seguimiento de las operaciones de desreferencia en estructuras de NET_ROOT. |
RxReferenceNetFcb (Fcb) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en estructuras FCB. |
RxReferenceNetFobx (Fobx) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en estructuras FOBX. |
RxReferenceNetRoot (NetRoot) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en estructuras de NET_ROOT. |
RxReferenceSrvCall (SrvCall) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en SRV_CALL estructuras que no están en el nivel DPC. |
RxReferenceSrvCallAtDpc (SrvCall) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en estructuras de SRV_CALL en el nivel DPC. |
RxReferenceSrvOpen (SrvOpen) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en estructuras de SRV_OPEN. |
RxReferenceVNetRoot (VNetRoot) |
Esta macro se usa para realizar un seguimiento de las operaciones de referencia en estructuras de V_NET_ROOT. |