Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
На сервере с динамически секционированием можно в любое время динамически заменять единицы секций в аппаратной секции. Это называется операцией горячей замены. При замене единицы секционирования операционная система переводит аппаратный раздел в псевдо-спящий режим S4. Чтобы поместить аппаратный раздел в это специальное состояние спящего режима, операционная система отправляет запрос на управление питанием, заданным S4 , всем драйверам устройств в системе. Однако, в отличие от обычного состояния питания S4, операционная система не записывает состояние системы в файл гибернации.
Драйвер устройства должен поддерживать это псевдо-состояние спящего режима S4, правильно обрабатывая питание запросов и устанавливая запросы на управление питанием . Драйвер устройства никогда не должен отклонять запрос на питание . Когда драйвер устройства получает запрос на управление питанием для набора S4, он должен перевести свои устройства в состояние питания устройства D3 и остановить все операции ввода-вывода. Сюда входят все операции прямого доступа к памяти (DMA), которые в настоящее время выполняются. При переводе устройств драйвера в низкое энергопотребление, отключении прерываний и остановке всех выполняемых операций ввода-вывода операция замены может продолжаться, не затрагивая драйвер устройства.
Пока устройства драйвера устройства находятся в состоянии питания D3, драйвер устройства должен ставить в очередь все новые запросы ввода-вывода, которые он получает. Драйвер устройства должен использовать период ожидания ввода-вывода для обрабатываемых им запросов ввода-вывода. Этот период времени ожидания должен быть достаточно длинным, чтобы время ожидания запросов ввода-вывода не истекло, если они остановлены или помещены в очередь во время замены секционирования. Когда операционная система возобновляет работу из псевдо S4 спящего режима, драйвер устройства может возобновить обработку любых остановленных или очередных запросов ввода-вывода.
Дополнительные сведения о реализации поддержки управления питанием в драйвере устройства см. в разделе Управление питанием.
Драйвер устройства не должен привязываться к уникально идентифицируемому экземпляру системного оборудования, например к конкретному процессору. В противном случае драйвер может завершиться ошибкой, если единица секции, содержащая это оборудование, будет заменена в аппаратном разделе.