Курсовая работа: Разработка драйвера виртуального жесткого диска
Описание
IRP_MN_START_DEVICE
Инициализация устройства с заданными ресурсами
IRP_MN_QUERY_STOP_DEVICE
Проверка осуществимости остановки устройства для перераспределения ресурсов
IRP_MN_STOP_DEVICE
Остановка устройства с потенциальной возможность. перезапуска или удаления из системы
IRP_MN_CANCEL_STOP_DEVICE
Уведомляет, что предыдущий запрос на остановку не получит дальнейшего развития
IRP_MN_QUERY_REMOVE_DEVICE
Проверка осуществимости безопасного удаления устройства
IRP_MN_REMOVE_DEVICE
Выполнить безопасное удаление устройства
IRP_MN_CANCEL_REMOVE_DEVICE
Уведомляет, что предыдущий запрос на удаление не получит дальнейшего развития
IRP_MN_SURPRISE_REMOVAL
Уведомляет, что устройство было удалено без предварительного предупреждения
Применительно к виртуальному диску большая часть этих сообщений не влечет каких-либо дополнительных действий, т.к. у рамдиска нет дополнительных буферов, данные с которые должны быть записаны на диск при остановке устройства, или поддержки функций управления электропитанием устройства. Поэтому для виртуального диска существует внутренняя переменная, которая хранит текущее состояние устройства.
Основным состоянием диска будет WORKING – когда диск находится в рабочем состоянии. Остальные состояния(приведенные в таблице 3) носят информативный характер, чтобы узнать текущий режим работы диска. При операциях доступа к устройству будет осуществляться проверка состояния WORKING, и только при нем доступ к диску разрешен.
Таблица 3
Состояние |
Значение |
STOPPED |
Устройство остановлено |
WORKING |
Устройство работает |
PENDINGSTOP |
Устройство ожидает остановки |
PENDINGREMOVE |
К-во Просмотров: 559
Бесплатно скачать Курсовая работа: Разработка драйвера виртуального жесткого диска
|