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

UptoLike

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

79
30. Какая функция создает IRP?
31. Чем отличаются синхронные и асинхронные IRP?
32. Кому принадлежит синхронный IRP?
33. Каковы особенности синхронного IRP?
34. Какие проблемы могут возникать из-за неправильного уровня запроса
прерываний IRQL?
35. Когда планируется асинхронный вызов процедуры?
36. Кем планируется асинхронный вызов процедуры?
37. Зачем планируется асинхронный вызов процедуры?
38. В каком
случае может возникнуть блокировка при обработке IRP?
39. Как избежать возникновения блокировки при обработке ШКЗ&
40. Какие типы синхронных IRP существуют?
41. Какими функциями могут быть созданы синхронные IRP?
42. Какими функциями могут быть созданы асинхронные IRP?
43. Каковы особенности асинхронных IRP?
44. Какие типы асинхронных IRP существуют?
45. На каких уровнях IRQL могут создаваться асинхронные IRP?
46.
На каких уровнях IRQL могут создаваться синхронные IRP?
47. Для чего нужна функция IoFreeIrP?
48. Кто должен вызывать функцию IoFreeIrP?
49. Как пакет запроса ввода-вывода IRP передается диспетчерской функции?
50. Какая функция дает указатель на первый элемент стека ввода-вывода?
51. Почему для получения указателя на первый элемент стека ввода-вывода
следует вызывать функцию IoGetNextIrpStackLocation?
52.
В каком случае необходимо заполнение поля MajorFunction IRP?
53. Что происходит после инициализации стека ввода-вывода?
54. Какая функция посылает IRP драйверу?
55. Что содержит первый аргумент функции IoCallDriver?
56. Для чего используется функция IoAttachDeviceToDeviceStack?
57. Каков типичный вид функции IoCallDriver?
58. Что делает функция IoCallDriver?
59. Какова типичная диспетчерская функция?
60. Как определяются параметры и дополнительный
код функции?
61. Как получается доступ к расширению объекта устройства?
62. Кому диспетчерская функция возвращает код NTSTATUS?
63. Какие еще действия должна выполнить диспетчерская функция?
64. В каких случаях IRP завершается в диспетчерской функции?
65. К чему сводится завершение IRP?
30. Какая функция создает IRP?
31. Чем отличаются синхронные и асинхронные IRP?
32. Кому принадлежит синхронный IRP?
33. Каковы особенности синхронного IRP?
34. Какие проблемы могут возникать из-за неправильного уровня запроса
    прерываний IRQL?
35. Когда планируется асинхронный вызов процедуры?
36. Кем планируется асинхронный вызов процедуры?
37. Зачем планируется асинхронный вызов процедуры?
38. В каком случае может возникнуть блокировка при обработке IRP?
39. Как избежать возникновения блокировки при обработке ШКЗ&
40. Какие типы синхронных IRP существуют?
41. Какими функциями могут быть созданы синхронные IRP?
42. Какими функциями могут быть созданы асинхронные IRP?
43. Каковы особенности асинхронных IRP?
44. Какие типы асинхронных IRP существуют?
45. На каких уровнях IRQL могут создаваться асинхронные IRP?
46. На каких уровнях IRQL могут создаваться синхронные IRP?
47. Для чего нужна функция IoFreeIrP?
48. Кто должен вызывать функцию IoFreeIrP?
49. Как пакет запроса ввода-вывода IRP передается диспетчерской функции?
50. Какая функция дает указатель на первый элемент стека ввода-вывода?
51. Почему для получения указателя на первый элемент стека ввода-вывода
    следует вызывать функцию IoGetNextIrpStackLocation?
52. В каком случае необходимо заполнение поля MajorFunction IRP?
53. Что происходит после инициализации стека ввода-вывода?
54. Какая функция посылает IRP драйверу?
55. Что содержит первый аргумент функции IoCallDriver?
56. Для чего используется функция IoAttachDeviceToDeviceStack?
57. Каков типичный вид функции IoCallDriver?
58. Что делает функция IoCallDriver?
59. Какова типичная диспетчерская функция?
60. Как определяются параметры и дополнительный код функции?
61. Как получается доступ к расширению объекта устройства?
62. Кому диспетчерская функция возвращает код NTSTATUS?
63. Какие еще действия должна выполнить диспетчерская функция?
64. В каких случаях IRP завершается в диспетчерской функции?
65. К чему сводится завершение IRP?
                                  79