Организация ввода-вывода. Драйверы WDM. Рощин А.В. - 81 стр.

UptoLike

Составители: 

81
99. Что должна сделать функция DpcForIsr?
100. Что такое функция завершения?
101. Как драйвер вышележащего уровня получает информацию о результатах
выполнения конкретного запроса ввода-вывода IRP драйвером нижележащего
уровня?
102. Что делает функция IoSetCmpletionRoutine?
103. Каковы аргументы функции IoSetCmpletionRoutine?
104. Для чего необходим первый аргумент функции IoSetCmpletionRoutine?
105. Для чего необходим второй аргумент функции IoSetCmpletionRoutine?
106.
Для чего необходим третий аргумент функции IoSetCmpletionRoutine?
107. Для чего необходим четвертый аргумент функции IoSetCmpletionRoutine?
108. Для чего необходим пятый аргумент функции IoSetCmpletionRoutine?
109. Для чего необходим шестой аргумент функции IoSetCmpletionRoutine?
110. Что означает значение аргумента InvokeOnSuccess?
111. Что означает значение аргумента InvokeOnError?
112. Что означает значение аргумента InvokeOnCancel?
113. Каковы требования к трем последним аргументам функции
IoSetCmpletionRoutine?
114. В каком IRP сохраняется указатель на функцию завершения при вызове
функции IoSetCmpletionRoutine?
115. Что будет, если драйвер уствновит функцию завершения для конкретного
IRP и завершит его?
116. На каком уровне IRQL вызывается функция завершения?
117. Что должна сделать функция завершения, если драйвер создавал новые IRP
для передачи нижележащему драйверу?
118. Какие значения может возвращать
функция завершения?
119. Как вызываются функции завершения, установленные драйвером в
элементах стека ввода-вывода?
120. Какая функция отвечает за вызов функций завершения?
121. Когда завершается цикл вызова функций завершения драйвера?
122. В каком случае функция IoCompleteRequest перемещает указатель стека
ввода-вывода на один уровень вверх и продолжает работу?
123. В каком
случае функция IoCompleteRequest прекращает работу и
возвращает управление?
124. Что предусмотрено для вывода IRP из «подвешенного» состояния в случае
прекращения работы функции IoCompleteRequest?
125. Что делает функция IoCompleteRequest перед вызовом функции завершения,
и зачем?
99. Что должна сделать функция DpcForIsr?
100. Что такое функция завершения?
101. Как драйвер вышележащего уровня получает информацию о результатах
    выполнения конкретного запроса ввода-вывода IRP драйвером нижележащего
    уровня?
102. Что делает функция IoSetCmpletionRoutine?
103. Каковы аргументы функции IoSetCmpletionRoutine?
104. Для чего необходим первый аргумент функции IoSetCmpletionRoutine?
105. Для чего необходим второй аргумент функции IoSetCmpletionRoutine?
106. Для чего необходим третий аргумент функции IoSetCmpletionRoutine?
107. Для чего необходим четвертый аргумент функции IoSetCmpletionRoutine?
108. Для чего необходим пятый аргумент функции IoSetCmpletionRoutine?
109. Для чего необходим шестой аргумент функции IoSetCmpletionRoutine?
110. Что означает значение аргумента InvokeOnSuccess?
111. Что означает значение аргумента InvokeOnError?
112. Что означает значение аргумента InvokeOnCancel?
113. Каковы требования к трем последним аргументам функции
    IoSetCmpletionRoutine?
114. В каком IRP сохраняется указатель на функцию завершения при вызове
    функции IoSetCmpletionRoutine?
115. Что будет, если драйвер уствновит функцию завершения для конкретного
    IRP и завершит его?
116. На каком уровне IRQL вызывается функция завершения?
117. Что должна сделать функция завершения, если драйвер создавал новые IRP
    для передачи нижележащему драйверу?
118. Какие значения может возвращать функция завершения?
119. Как вызываются функции завершения, установленные драйвером в
    элементах стека ввода-вывода?
120. Какая функция отвечает за вызов функций завершения?
121. Когда завершается цикл вызова функций завершения драйвера?
122. В каком случае функция IoCompleteRequest перемещает указатель стека
    ввода-вывода на один уровень вверх и продолжает работу?
123. В каком случае функция IoCompleteRequest прекращает работу и
    возвращает управление?
124. Что предусмотрено для вывода IRP из «подвешенного» состояния в случае
    прекращения работы функции IoCompleteRequest?
125. Что делает функция IoCompleteRequest перед вызовом функции завершения,
    и зачем?
                                    81