Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
RDBSS предоставляет ряд подпрограмм для диагностики и отладки. Эти подпрограммы делятся на две категории:
Процедуры утверждения и отладки
Процедуры отслеживания ссылок и разыменования ссылок
Эти подпрограммы включают элементы, представленные в следующей таблице.
| Рутина | Описание |
|---|---|
Эта подпрограмма отправляет строку утверждения в проверенных сборках RDBSS в отладчик ядра, если он установлен. Если используется файл rxAssert.h include, вызовы ядра Windows RtlAssert также будут переопределены для вызова этой подпрограммы RxAssert . Для розничных сборок вызовы этой подпрограммы будут проверять ошибки. |
|
Эта подпрограмма вызывает исключение, которое обрабатывается отладчиком ядра, если он установлен; в противном случае она обрабатывается системой отладки. |
|
Эта подпрограмма используется для отслеживания запроса на обращение к структурам SRV_CALL, NET_ROOT, V_NET_ROOT, FOBX, FCB и SRV_OPEN в отладочных сборках. Журнал этих ссылочных запросов можно получить через систему ведения журнала и WMI. Эта подпрограмма не выполняет операцию разыменования. Для розничных сборок эта подпрограмма ничего не делает. |
|
Эта подпрограмма используется для отслеживания запроса на разыменовку SRV_CALL, NET_ROOT, V_NET_ROOT, FOBX, FCB и SRV_OPEN структур в проверенных сборках. Журнал этих запросов расшифровки можно получить с помощью системы ведения журнала и WMI. Эта подпрограмма не выполняет эталонную операцию. Для розничных сборок эта подпрограмма ничего не делает. |
Помимо подпрограмм, перечисленных в предыдущей таблице, для отладки определяются ряд макросов, вызывающих эти подпрограммы. Эти макросы, перечисленные в следующей таблице, предоставляют оболочку вокруг подпрограмм RxReference или RxDereference , используемых для операций управления структурами файлов в SRV_CALL, NET_ROOT, V_NET_ROOT, FOBX, FCB и SRV_OPEN структурах. Эти макросы сначала вызывают соответствующую подпрограмму RxpTrackReference или RxpTrackDereference для регистрации диагностической информации перед вызовом соответствующей подпрограммы RxReference или RxDeference. Журнал запросов привязки и разыменования можно получить с помощью системы ведения журнала RDBSS и WMI.
| Макрос | Описание |
|---|---|
RxDereferenceAndFinalizeNetFcb (Fcb, RxContext, RecursiveFinalize, ForceFinalize) |
Этот макрос используется для отслеживания операций деконференции в структурах FCB. Обратите внимание, что этот макрос управляет числом ссылок и также возвращает статус вызова функции завершения. |
RxDereferenceNetFcb (Fcb) |
Этот макрос используется для отслеживания операций деконференции в структурах FCB. Обратите внимание, что этот макрос управляет счетчиком ссылок, а также возвращает состояние окончательного вызова разыменования. |
RxDereferenceNetFobx (Fobx,LockHoldingState) |
Этот макрос используется для отслеживания операций деконференции в структурах FOBX. |
RxDereferenceNetRoot (NetRoot, LockHoldingState) |
Этот макрос используется для отслеживания операций деконференции в NET_ROOT структурах. |
RxDereferenceSrvCall (SrvCall, LockHoldingState) |
Этот макрос используется для отслеживания операций деконференции в SRV_CALL структурах. |
RxDereferenceSrvOpen ( SrvOpen, LockHoldingState) |
Этот макрос используется для отслеживания операций деконференции в структурах SRV_OPEN. |
RxDereferenceVNetRoot ( VNetRoot, LockHoldingState) |
Этот макрос используется для отслеживания операций деконференции в NET_ROOT структурах. |
RxReferenceNetFcb (Fcb) |
Этот макрос используется для отслеживания ссылочных операций в структурах FCB. |
RxReferenceNetFobx (Fobx) |
Этот макрос используется для отслеживания ссылочных операций в структурах FOBX. |
RxReferenceNetRoot (NetRoot) |
Этот макрос используется для отслеживания ссылочных операций в структурах NET_ROOT. |
RxReferenceSrvCall (SrvCall) |
Этот макрос предназначен для отслеживания операций с ссылками на структуры SRV_CALL, которые не находятся на уровне DPC. |
RxReferenceSrvCallAtDpc (SrvCall) |
Этот макрос используется для отслеживания ссылочных операций на SRV_CALL структурах на уровне DPC. |
RxReferenceSrvOpen (SrvOpen) |
Этот макрос используется для отслеживания ссылочных операций в структурах SRV_OPEN. |
RxReferenceVNetRoot (VNetRoot) |
Этот макрос используется для отслеживания ссылочных операций в структурах V_NET_ROOT. |