ВУЗ:
Составители:
34
Сегменты кода и данных реального режима 16-разрядные
(сегментированная модель), все другие сегменты 32-разрядные (плоская
модель).
Сегмент инициализации реального режима содержит код, который
выполняется в начале последовательности инициализации Windows перед
переключением VMM в защищенный режим. Эта ранняя фаза
инициализации дает каждому статически загружаемому VxD возможность
исследовать пред-Windows окружение реального режима, и затем решить,
следует
ли продолжить загрузку VxD. Возвращаясь с кодом возврата в АХ,
VxD может сообщить VMM, следует ли продолжить загрузку секции
защищенного режима VxD, прервать загрузку этого VxD, или даже
прервать загрузку Windows.
Большинство VxD не нуждается в процедуре инициализации
реального режима, кроме PAGEFILE VxD являющегося частью менеджера
виртуальных машин VMM. PAGEFILE использует некоторые вызовы DOS
(int 21h), чтобы выяснить, загружен ли драйвер устройства DOS
SMARTDRV. Если
нет, PAGEFILE возвращается из процедуры
инициализации реального режима с установленным флагом переноса, так
что VMM никогда не вызовет код защищенного режима PAGEFILE.
После выполнения секции реального режима каждого статически
загружаемого VxD VMM переключается в защищенный режим и дает
возможность каждому статически загруженному VxD возможность
выполнить код в его сегменте инициализации защищенного режима. Код
инициализации защищенного режима также может возвращать код
ошибки, чтобы сообщить VMM, что VxD потерпел неудачу при
инициализации. Если VxD сообщает о неудаче инициализации, VMM
отмечает этот VxD как
неактивный, и никогда больше не вызывает его.
34
Сегменты кода и данных реального режима 16-разрядные
(сегментированная модель), все другие сегменты 32-разрядные (плоская
модель).
Сегмент инициализации реального режима содержит код, который
выполняется в начале последовательности инициализации Windows перед
переключением VMM в защищенный режим. Эта ранняя фаза
инициализации дает каждому статически загружаемому VxD возможность
исследовать пред-Windows окружение реального режима, и затем решить,
следует ли продолжить загрузку VxD. Возвращаясь с кодом возврата в АХ,
VxD может сообщить VMM, следует ли продолжить загрузку секции
защищенного режима VxD, прервать загрузку этого VxD, или даже
прервать загрузку Windows.
Большинство VxD не нуждается в процедуре инициализации
реального режима, кроме PAGEFILE VxD являющегося частью менеджера
виртуальных машин VMM. PAGEFILE использует некоторые вызовы DOS
(int 21h), чтобы выяснить, загружен ли драйвер устройства DOS
SMARTDRV. Если нет, PAGEFILE возвращается из процедуры
инициализации реального режима с установленным флагом переноса, так
что VMM никогда не вызовет код защищенного режима PAGEFILE.
После выполнения секции реального режима каждого статически
загружаемого VxD VMM переключается в защищенный режим и дает
возможность каждому статически загруженному VxD возможность
выполнить код в его сегменте инициализации защищенного режима. Код
инициализации защищенного режима также может возвращать код
ошибки, чтобы сообщить VMM, что VxD потерпел неудачу при
инициализации. Если VxD сообщает о неудаче инициализации, VMM
отмечает этот VxD как неактивный, и никогда больше не вызывает его.
Страницы
- « первая
- ‹ предыдущая
- …
- 32
- 33
- 34
- 35
- 36
- …
- следующая ›
- последняя »
