Запуск windows 10 в режиме отладки

Что такое режим отладки на операционной системе Windows 10. Для чего он нужен и как включается. Решение проблем, которые могут возникнуть в процессе активации.

Описание режима отладки и как его включить на компе с системой Windows 10

Компьютеры на базе Windows 10 поддерживают несколько способов запуска. Среднестатистические пользователи не придают этой опции значения, включая ПК в обычном режиме, когда доступны все основные службы. Но параллельно с этим существует режим отладки на операционной системе Windows 10, который может пригодиться опытным юзерам, желающим провести диагностику своего устройства.

Что такое режим отладки в Windows 10

Для определения того, что собой представляет данный режим, необходимо определить значение слова «отладка» («Debugging»). В сфере компьютерной техники ею называют процесс, позволяющий найти и устранить ошибки, связанные с работой ПК.

screenshot_1

Режим отладки позволяет решить массу проблем – от небольших сбоев Windows 10 до полного отказа от работы. Впрочем, к нему следует обращаться только опытным пользователям, которые способны найти объяснение каждому своему шагу. В остальных случаях, когда речь идет о новичке, исключать возможность применения режима тоже нельзя. Но в такой ситуации важно изучить инструкцию по активации Debugging и способах его применения на практике.

Как его включить?

Чтобы приступить к поиску и устранению неисправностей, необходимо перейти в режим Debugging. Для этого понадобится открыть меню с разными вариантами загрузки по следующему алгоритму:

  • Откройте «Параметры» через меню «Пуск».

screenshot_2

  • Перейдите в раздел «Обновление и безопасность», а затем – «Восстановление».

screenshot_3

  • Под заголовком «Особые варианты загрузки» нажмите на кнопку «Перезагрузить сейчас».

screenshot_4

На заметку. Также вы можете открыть дополнительное меню, зажав клавишу «Shift» при выборе варианта «Перезагрузка» в «Пуске».

В случае правильного выполнения указанных действий компьютер перезагрузится, а при следующем включении вы увидите синий экран с выбором действий. Можно нажать на кнопку «Продолжить», чтобы запустить ПК в стандартном режиме, но нас интересует Debugging, поэтому действуйте иначе:

  • Перейдите в раздел «Поиск и устранение неисправностей».

screenshot_5

  • Выберите «Дополнительные параметры», а затем – «Параметры загрузки».

screenshot_6

  • Найдите в списке пункт, отвечающий за отладку, и нажмите на клавишу, которая отвечает за ее активацию (как правило, это клавиша «F1»).

screenshot_7

После этого устройство включится вместе с отладочным окном, которое поможет выполнить различные манипуляции для диагностики и решения проблем. Также в рассматриваемом режиме любые ошибки сохраняются в виде отдельных файлов «логов», аналогичным образом помогающих установить причины неполадок и своевременно устранить их.

Возможные проблемы

Debugging изначально предназначен для устранения неисправностей, однако при попытке запуска функции у пользователей тоже могут возникнуть проблемы. Самая частая из них заключается в том, что при перезагрузке не открывается окно дополнительных параметров. Исправить ошибку удается путем обращения к альтернативному способу запуска:

  • Щелкните ПКМ по иконке «Пуск».
  • Откройте Командную строку с правами Администратора.
  • Введите запрос «bcdedit /set advancedoptions true».

screenshot_8

  • Нажмите на клавишу «Enter».

Следом произойдет перезапуск, и расширенные параметры откроются в принудительном порядке. Еще одна проблема связана с выходом из отладки. Чтобы компьютер включался в стандартной конфигурации, необходимо обработать запрос «deletevalue». Впечатать «bcdedit /deletevalue advancedoptions» в вышеупомянутой Командной строке или на появившемся синем экране выбрать опцию «Продолжить».



Компьютеры с Windows 10 поддерживают несколько методов загрузки. Обычные пользователи не придают значения этой опции, включая ПК в нормальном режиме, когда доступны все основные сервисы. Но параллельно с этим в операционной системе Windows 10 есть режим отладки, который может быть полезен опытным пользователям, которые хотят диагностировать свое устройство.

Чтобы определить, что это за режим, вам необходимо определить значение слова «отладка» («Debug»). В области компьютерных технологий это называется процессом поиска и исправления ошибок, связанных с работой ПК.

скриншот_1

Режим отладки позволяет решить множество проблем, от небольших проблем с Windows 10 до сбоев. Однако с ним должны консультироваться только опытные пользователи, которые могут найти объяснение для каждого своего шага. В остальных случаях, когда дело касается новичка, исключать возможность применения схемы тоже нельзя. Но в такой ситуации важно изучить инструкцию по активации отладки и как применять на практике.

Как его включить?

Чтобы запустить средство устранения неполадок, вам необходимо войти в режим отладки. Для этого нужно открыть меню с разными вариантами загрузки по следующему алгоритму:

  • Откройте «Настройки» из меню «Пуск».

скриншот_2

  • Перейдите в раздел «Обновление и безопасность», а затем в раздел «Восстановление».

screenshot_3

  • В разделе «Специальные параметры запуска» нажмите кнопку «Перезагрузить сейчас».

screenshot_4

В примечании. Вы также можете открыть дополнительное меню, удерживая клавишу «Shift» и выбрав опцию «Перезагрузить» в разделе «Пуск».

Если эти действия выполнены правильно, компьютер перезагрузится, и при следующем включении вы увидите синий экран с выбором действий. Вы можете нажать кнопку «Продолжить», чтобы запустить ПК в стандартном режиме, но нас интересует отладка, поэтому действуйте иначе:

  • Перейдите в раздел «Устранение неисправностей».

screenshot_5

  • Выберите «Дополнительные параметры», а затем «Параметры запуска».

screenshot_6

  • Найдите в списке элемент, отвечающий за отладку, и нажмите клавишу, отвечающую за его активацию (как правило, это клавиша «F1»).

screenshot_7

После этого устройство загорится вместе с окном отладки, которое поможет вам выполнять различные манипуляции для диагностики и устранения проблем. Кроме того, в этом режиме все ошибки сохраняются в виде отдельных файлов «журнала», что помогает выявить причины проблем и оперативно их устранить.

Возможные проблемы

Отладка изначально предназначена для устранения неполадок, но пользователи могут столкнуться с проблемами при попытке запустить функцию. Наиболее распространенным из них является то, что окно дополнительных параметров не открывается при перезагрузке. Ошибку можно исправить, обратившись к альтернативному способу загрузки:

  • Щелкните правой кнопкой мыши значок «Пуск».
  • Откройте командную строку от имени администратора.
  • Введите запрос «bcdedit / set advancedoptions true».

screenshot_8

  • Нажмите клавишу Enter».

После этого произойдет перезагрузка, и дополнительные параметры откроются принудительно. Другая проблема связана с выходом из отладки. Чтобы включить компьютер в его конфигурации по умолчанию, необходимо обработать запрос «deletevalue». Введите «bcdedit / deletevalue advancedoptions» в командной строке выше или на появившемся синем экране выберите параметр «Продолжить».

Источник изображения: it-tehnik.ru

Ряд функций в Windows по умолчанию скрыт от пользователей, ведь они нужны только определенному кругу лиц. К их числу относится и режим разработчика. Именно этой теме и посвящена наша статья. Давайте разбираться, как можно включить режим разработчика в Windows 10, а заодно мы объясним, зачем именно он добавлен.

Содержание

  1. Что такое режим разработчика в Windows 10?
  2. Как включить режим разработчика в Windows 10?
  3. Способ 1: В настройках Windows 10
  4. Способ 2: Через редактор локальной групповой политики
  5. Способ 3: Через редактор реестра
  6. Способ 4: В командной строке
  7. Возможные проблемы при включении режима разработчика в параметрах
  8. Пункт «Режим разработчика» отсутствует или недоступен
  9. Сбой 0x80004005
  10. Отсутствие необходимых обновлений в системе
  11. Другие неполадки

Что такое режим разработчика в Windows 10?

По самому названию достаточно легко догадаться, что эта опция изначально задумывалась для разработчиков, ведь помогает в тестировании различных приложений. При этом снимается ряд ограничений, например, на установку неподписанных appx-файлов и т. д.

Как включить режим разработчика в Windows 10?

Существует множество способов для достижения желаемого результата. Мы же опишем только четыре из них.

Вручную настроить режим отладки в Windows 10 выйдет так:

  • Со страницы параметров ПК.
  • Путем редактирования локальной групповой политики.
  • Работа с системным реестром, изменение 2 записей.
  • Выполнение 2 команд в командной строке.

Рассмотрим все четыре в отдельных инструкциях.

Способ 1: В настройках Windows 10

Начиная с «восьмерки», в операционной системе появилось специально окно «Параметры», предназначенное для быстрого изменения тех или иных настроек. И с его помощью получится включить необходимую функцию.

Пошаговая инструкция:

  1. Вызовите меню «Пуск» и щелкните мышкой по отмеченному значку. Альтернативный вариант – нажать комбинацию Win + I.
  2. В результате откроется окно «Параметры». В нем посетите отмеченную на скриншоте страницу.
  3. В боковом меню посетите раздел под названием «Для разработчиков».
  4. Здесь и получится отыскать интересующую нас опцию. Достаточно кликнуть по соответствующей графе, чтобы ее активировать.
  5. Для подтверждения нажмите на кнопку «Да» в новом окне с предупреждением.
  6. Начнется установка необходимых инструментов для работы функции. Подождите, пока она не завершится, а затем перезагрузите компьютер или ноутбук.

Когда вы выполните все необходимые действия, отладку стоит деактивировать. Для этого откройте ту же самую страницу в «Параметрах», но на этот раз включите первый пункт, а затем выполните перезагрузку.

Способ 2: Через редактор локальной групповой политики

Сразу же перейдем к пошаговой инструкции:

  1. Нажмите Win + R одновременно. Тогда откроется окно «Выполнить».
  2. В графу «Открыть» вбейте команду gpedit.msc. И для ее запуска нажмите Enter на клавиатуре или кнопку «ОК».
  3. В левом меню по очереди раскройте графы «Конфигурация компьютера – Административные шаблоны – Компоненты Windows».
  4. Пролистайте список вниз, пока не отыщете пункт «Развертывание…».
  5. С помощью двойного клика откройте настройки для графы «Разрешить разработку…».
  6. Активируем ее, нажав на соответствующий пункт, а затем последовательно нажимаем на кнопки «Применить» и «ОК», чтобы внести изменения.
  7. Повторяем такое же действие и для графы «Разрешить установку…».
  8. Перезапускаем систему.

Способ 3: Через редактор реестра

Также включить функцию отладки Windows получится путем редактирования одной записи в системном реестре. Чтобы добраться до нее, выполните следующие шаги:

  1. Опять запустите инструмент «Выполнить», одновременно нажав клавиши Win + R.
  2. Но на этот раз введите команду regedit.
  3. Кликните на «ОК» для продолжения.
  4. Кликаем по «стрелочке» рядом с графой HKEY_LOCAL_MACHINE, чтобы раскрыть ее содержимое.
  5. Аналогичным образом проходим по следующему пути: SOFTWARE – Microsoft – Windows – CurrentVersion
  6. Теперь нажимаем на пункт AppModelUnlock.
  7. Откроется страница с тремя параметрами, но нам интересны только два нижних, в типе которых указано REG_DWORD. Дважды кликаем левой клавишей мыши на параметр AllowAllTrustedApps.
  8. Откроется окошко редактирования с заголовком «Изменение параметра DWORD (32 бита)». В графе «Значение» вместо 0 вводим 1, а затем нажимаем кнопку «ОК».
  9. Такое же действие делаем и для параметра ниже.
  10. Закрываем редактор реестра и перезапускаем компьютер, чтобы применить внесенные изменения.

Способ 4: В командной строке

Этот способ включения режима разработчика по своей сути заключается в описанном выше редактировании реестра, но несколько иным путем, то есть через командную строку. Рассмотрим процедуру в пошаговом формате:

  1. Нажимаем комбинацию Win + Q, чтобы запустить поиск в Пуске.
  2. Вводим имя cmd в текстовое поле. Отобразится нужный нам инструмент.
  3. В списке доступных параметров выбираем пункт «Запуск…».
  4. Копируем следующую команду:
    reg add «HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAppModelUnlock» /t REG_DWORD /f /v «AllowAllTrustedApps» /d «1»
  5. Вставляем ее в Командную строку Windows, активировав соответствующее окно и кликнув правой клавишей мыши по его содержимому.
  6. Нажимаем Enter на клавиатуре для запуска.
  7. Выполняем вторую команду:
    reg add «HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionAppModelUnlock» /t REG_DWORD /f /v «AllowDevelopmentWithoutDevLicense» /d «1»
  8. Перезагружаем компьютер.

Чтобы деактивировать отладчик, нужно выполнить те же самые команды, но цифру 1 внутри кавычек заменить на 0, а затем перезагрузить ПК.

Возможные проблемы при включении режима разработчика в параметрах

Бывает такое, что пользователи операционной системы Windows 10 сталкиваются с разными ошибками при попытке активации данной функции. Мы рассмотрим самые распространенные случаи и способы борьбы с ними:

  • Необходимый пункт попросту недоступен.
  • Код ошибки 0x80004005.
  • Отсутствие необходимых обновлений в системе.
  • Прочие неполадки.

Пункт «Режим разработчика» отсутствует или недоступен

С такой проблемой можно столкнуться, когда операционная система работает в ограниченном режиме. Решение на самом деле предельно простое – обратитесь к другим способам, которые были описаны в статье. Один из них обязательно должен заработать.

Сбой 0x80004005

При попытке установки инструментов разработчика может появиться такая ошибка. Зачастую она связана с тем, что какая-то защитная программа ограничивает для системы доступ к Интернету. Из-за этого не получается загрузить необходимые компоненты. Особенно это относится к антивирусам.

Лучшее решение – временно приостановить защиту и попробовать заново включить функцию. Для отключения антивируса зачастую достаточно в трее Windows кликнуть по его значку правой клавишей мыши и выбрать соответствующий пункт.

Отсутствие необходимых обновлений в системе

Может быть такое, что в Windows отсутствуют необходимые обновления. Особенно это относится к ПК, где автообновление отключен пользователем. Для проверки следуйте следующее:

  1. Опять вызовите окно «Параметры» комбинацией клавиш Win + I и пройдите на страницу «Обновление и безопасность».
  2. Запустите процедуру обновления и дождитесь ее окончания.
  3. Теперь вернитесь к главной странице окна «Параметров» и откройте «Приложения».
  4. Выберите опцию «Управление дополнительными компонентами».
  5. В конце списка должен находится элемент «Режим разработчика Windows».
  6. А если его нет, то в самом начале нажмите на кнопку «Добавить…».
  7. Отыщите нужный, активируйте его и запустите установку.

Другие неполадки

Если обновление системы и ручная установка компонента не дала нужного результата, то проблема с включением режима разработчика может лежать в каком-нибудь системном сбое. Самый действенный способ его устранения – откат состояния Windows до предыдущей резервной копии. Пользовательские данные при этом затронуты не будут, но последние внесенные изменения отменятся, а также сотрутся последние установленные программы.

Запустить процедуру восстановления получится так:

  1. Опять открываем инструмент «Выполнить» с помощью горячих клавиш Win + R.
  2. Но на этот раз запускаем команду sysdm.cpl.
  3. В новом окне переходим во вкладку «Защита системы» и сразу же активируем функцию «Восстановить…».
  4. В новом окне нажимаем «Далее» и выбираем подходящую резервную точку для отката. Для ориентирования обращайте внимание на дату ее создания и комментарий в графе «Описание». А с помощью кнопки «Поиск затрагиваемых программ» можно увидеть те изменения, которые будут отменены.
  5. Запускаем процедуру и завершаем ее.
  6. Проверяем, все ли работает корректно.

Режимы Windows 10 необходимы для удобства и решения проблем с компьютером. Windows 10 имеет 12 режимов, которые помогают пользователю при работе с компьютером. Давайте рассмотрим все режимы Windows 10, их предназначение, и как пользоваться режимами Windows 10.

Эта опция полезна в решении различных задач и проблем, с которыми сталкивается Windows 10. Его применяют для устранения ошибок с драйверами, детектирования и удаления вирусов, включения локального профиля админа, восстановления ОС из резервной копии или средствами загрузчика Windows 10.

Безопасный режим (Safe Mode) Windows 10 имеет несколько подтипов, которые различаются количеством загружаемых драйверов:

  1. Минимальный – стандартный функционал с наименьшим каталогом программных компонентов для работы ОС.
  2. Другая оболочка – добавление к стандартному набору вызов командной строки, для реализации дополнительных функций системы.
  3. Сеть – подключение к «Минимальный» сетевых драйверов для выхода в локальную сеть и интернет.
  4. Active Directory – включение в загрузчик контроллера домена Windows, на котором присутствует Active Directory, чтобы восстановить службы каталогов. Опция для ИТ-специалистов.

Режимы Windows 10

На скриншоте показаны вариации безопасного режима, которые можно включить при запуске системы, с помощью нажатия клавиши F8 до полной загрузки системы. Все режимы Windows 10 доступны в «Конфигурация системы».

Как запустить безопасный режим Windows 10 из загруженной системы:

  • Нажмите Win+Rи пропишите msconfig;

msconfig

  • Перейдите в раздел «Загрузка».

Режимы Windows 10

  • Выставите напротив «Безопасный режим» птичку и укажите оболочку.

Режимы Windows 10

  • Жмите «Применить» и перезагружайте ПК. После перезагрузки автоматически вы войдете в выставленный Safe Mode.

Как отключить режим Windows 10:

  • Когда вы находитесь в этой оболочке перейдите в «Конфигурацию системы» аналогичным способом.

Режимы Windows 10

  • В этой вкладке отмените галочку и жмите «Применить».

Режимы Windows 10

  • Последующая перезагрузка компьютера произойдет со штатной загрузкой Windows

Если эта опция часто используется для задач, ее реально добавить в список загрузок.

Как запустить безопасный режим Windows 10, чтобы тот появился в разделе «Загрузка»:

  • Откройте командную строку с правами админа и вводите поочередно команды. Первая строка покажет Он понадобится в следующей команде.
  • Первая строка bcdedit /copy {default} /d “Безопасный режим”
  • Вытяните код в текстовый формат, и совместите его с другим кодом.
  • Вторая строка bcdedit /set {отобразившийся_GUID} safeboot minimal

CMD Windows 10

  • Готово. Теперь здесь появится строка. Здесь же можно выставить таймаут автоматического запуска выставленной по умолчанию системы.

Вопрос, как войти в безопасный режим Windows 10 отпадет сам по себе, поскольку теперь перед загрузкой ОС у вас будет постоянный выбор.

Режимы Windows 10

Режимы Windows 10 – отладка

Позволяет проводить расширенную диагностику операционной системы для сисадминов и ИТ-специалистов. Является неотъемлемой частью Safe Mode. Он необходим в случаях, когда компьютер начинает нестабильно работать. С помощью этого режима вы сможете провести проверку компьютера максимально глубоко и исправить проблемы.

Чтобы войти в режим отладки, необходимо при запуске, до появления экрана приветствия, нажать клавишу F8. Альтернативный способ: Открыть меню пуск, зажать клавишу Shift, и не отпуская её выбрать пункт “Перезагрузка компьютера”.

Вы должны попасть на экран “Дополнительные параметры загрузки”. Выберите пункт “Параметры загрузки”, в нем будет доступен режим отладки Windows 10.

Включить режим отладки Windows

Чтобы выбирать пункты, используйте клавиши F1-F9. То есть, чтобы задействовать отладку, необходимо нажать F1.

Внимание! В зависимости от версии Windows 10 меню может немного отличаться.

Режимы Windows 10

Пункты меню имеют одинаковую суть. Например, вместо “Поиск и устранение неисправностей” пункт может называться “Диагностика”.

Тестовый режим Windows 10

Если вам нужно протестировать не доведенную до ума программу или драйвер, используйте Тестовый режим Windows 10. В x64 версиях ОС он отключает некоторые ограничения безопасности, тем самым позволяет диагностировать сырой софт в среде Виндовс.

Включить его можно командой в командной строке: bcdedit.exe -set TESTSIGNING ON

Режимы Windows 10

Выключить можно аналогичным способом, поменяв значение ON на OFF.

Режимы Windows 10

Обязательное условие успешной операции – запуск с правами админа CMD.

Режимы Windows 10 – разработка

Если необходимо установить приложения с разрешением .appx не из Microsoft Store, можно использовать режим разработчика Windows 10. Также, он будет полезен программистам и ИТ-специалистам для решения множественных задач.

Активировать его просто:

  • Нажмите Win+Iи зайдите в «Обновление и безопасность».

Режимы Windows 10

  • Откройте раздел «Для разработчиков», выберите соответствующий пункт.

Режимы Windows 10

  • Согласитесь с предупреждением.

Режимы Windows 10

  • Дождитесь окончания активации.

Режимы Windows 10

  • Перезагрузите ПК, чтобы изменения вступили в силу.

Отключение делается таким же способом, только нужно поставить метку напротив другого пункта «Неопубликованные приложения».

Спящий режим Windows 10

Спящий режим Windows 10 – это особая форма работы системы, во время которой компьютеризированная машина в режиме простоя может существенно сэкономить энергопотребление. Если ПК находится в таком состоянии все его активированные программы сохраняются и будут доступны в том же виде, когда ПК снова запустится.

Включается и отключается опция в одном удобном месте:

  • Нажмите Win+I и перейдите в пункт «Система».

Режимы Windows 10

  • Выберите раздел «Питание и спящий режим».

Режимы Windows 10

  • Задайте таймер бездействия ПК, при котором тот перейдет в спящий режим.

Режимы Windows 10

Если нужно опцию выключить, просто укажите в настойках «Никогда».

Режим гибернации Windows 10

Схожий по концепции с предыдущим, режим гибернации Windows 10. Он тоже направлен на сохранении низкого энергопотребления, но с той лишь разницей, что полностью отключает компьютер.

Если при спящем режиме вся информация из ОЗУ сохраняется в ПЗУ и компьютер потребляет минимальную энергию для работы в этой фазе, то гибернация подразумевает выгрузку всех данных по открытому программному обеспечению на накопитель в файл hiberfil.sys. После этого ПК полностью выключается. Последующая загрузка обращается к файлу гибернации, подтягивает нужные данные, восстанавливая тем самым открытое ПО.

Параметр гибернации по умолчанию скрыт в системе, но его можно открыть:

  • Нажмите Win+R и введите powercfg.cpl

Режимы Windows 10

  • Нажмите «Действие кнопок питания».

Режимы Windows 10

  • Кликните «Изменение параметров».

Режимы Windows 10

  • Поставьте птичку напротив «Режим гибернации».

Режимы Windows 10

  • Сохраните изменения. Теперь данный пункт будет отображаться вместе с остальными, если нажать кнопку выключения или Alt+F

Режимы Windows 10

Режимы Windows 10 для чистого запуска

Вернуть операционной системе ее первозданный вид, как будто она только что была установлена на компьютер, поможет опция чистого запуска. Сделать режим чистой загрузки Windows 10 просто:

  • Нажмите Win+Rи выполните команду msconfig

Режимы Windows 10

  • Перейдите в раздел «Cлужбы».

Режимы Windows 10

  • Кликните «Не отображать службы Виндовс» и жмите «Отключите все».

Режимы Windows 10

  • Нажмите «Применить», перейдите на вкладку «Автозагрузка» и откройте «Диспетчер задач».

Режимы Windows 10

  • Здесь отключите автозагрузку всех программ.

Режимы Windows 10

  • После в «Конфигурация системы» жмите ОК и перезагружайте компьютер.

Вернуть все в прежнее состояния поможет обратная процедура активации программ и служб.

Игровой режим Windows 10

Когда на компьютере запускается игра, Game Mode увеличивает частоту кадров (FPS) за счет уменьшения выделяемых ресурсов для фоновых процессов. Активировать опцию просто:

  • Нажмите Win+Iи откройте «Игры».

Режимы Windows 10

  • Поставьте ползунок в положение «Вкл». Игровое меню по умолчанию открывается сочетанием клавиш Win+G

Режимы Windows 10

  • Запустите любую игру и нажмите Win+G (или другую комбинацию, если вы ее поменяли).
  • Нажмите на шестеренку и напротив пункта «Используйте для этой игры игровой режим» поставьте птичку.

Режимы Windows 10

  • Закройте параметры, выключите игру и вновь ее активируйте. Теперь эта игра каждый раз будет запускаться с применением данной опции до тех пор, пока вы не отключите ее таким же способом.

Прирост FPS в значительной мере заметен в компьютерах и ноутбуках с дискретной графикой и скромными «не игровыми» характеристиками. Прирост еле заметный или полностью отсутствует на игровых компьютерах с хорошей начинкой.

Существенным прирос может оказаться в том случае, если на компьютере запущенна уйма фоновых процессов и их временно нет возможности полностью деактивировать.

S-режим

Благодаря специальной надстройки ОС, именуемой S-режим, создается оболочка Windows 10, максимально направленная на безопасность пользователя.

Пользоваться в системе разрешено только предустановленным программным обеспечение и программами, что предустановлены в Microsoft Store. Переключится в S-режим с обычной операционной системы нельзя.

ОС с данной надстройкой и соответствующей лицензией устанавливается чистой на компьютер. Обычно, такая лицензия необходима для «рабочих инструментов» корпоративного сегмента.

Отключить S-режим можно, однако при переводе ОС в обычное состояние теряется лицензия Security опции:

  • Нажмите Win+Iи откройте раздел «Обновление и безопасность».

Режимы Windows 10

  • Перейдите в «Активация». Здесь жмите «Переключиться на Windows 10 Home / Pro».
  • Далее жмите «Обновить выпуск ОС Windows» либо на пункт «Store» для приобретения лицензии в магазине.
  • На страничке магазина жмите «Получить». Получите соответствующее уведомление о возможности установки программ из любых источников.

Режимы Windows 10

Режим планшета

Достаточно удобная опция, когда подключаешь телевизор к компьютеру через HDMI и желаешь управлять всеми процессами для настройки и просмотра фильма с помощью мышки.

Также – это незаменимая опция при работе с устройств с сенсорным экраном. Включается и выключается опция очень просто:

  1. В правом нижнем углу панели нажмите на иконку уведомлений.
  2. Затем кликните «Режим планшета».

Режим планшета виндовс

Здесь же будет доступна сенсорная клавиатура, которую легко вызывать прямо с панели Пуск.

Экранная клавиатура Windows 10

Режим в самолете

Эта опция становится доступной для компьютеров, оснащенных модулями беспроводной связи Bluetooth и Wi-Fi. Благодаря ей можно в одно мгновение выключить все беспроводные сети:

  1. Нажмите Win+A и кликните кнопку «В самолете».
  2. Подождите несколько секунд, чтобы все беспроводные сети перешли в выключенное состояние.

Выключив опцию, вы отмените запрет на выключение беспроводных сетей. Если они были включены, то Bluetooth и Wi-Fi продолжат работу.

Режим бога

Секретная папка Виндовс, в которой присутствуют все имеющиеся элементы администрирования ПК в виде списка. Для активации God Mode:

  • Под учетной записью администратора создайте папку и переименуйте ее в GodMode. {ED7BA470-8E54-465E-825C-99712043E01C}.

Режим бога виндовс 10

  • Готово, папка без названия ждет, пока ее откроют.

Режимы Windows 10

  • Используйте собранные здесь ярлыки для быстрого доступа к параметрам ОС.

Режимы Windows 10

Режим восстановления системы в Windows 10

Режим восстановления системы в Windows 10

Восстановление системы необходимо, когда компьютер вдруг перестал загружаться. Вы можете откатить Windows 10 до более раннего состояния, когда устройство работало стабильно.

Есть 2 варианта восстановления:

  1. С помощью точек восстановления системы.
  2. При помощи образа системы.

Если вы отключили создание точек восстановления, то откатиться назад можно только с помощью образа, записанного на установочный диск или загрузочную флешку. Как создавать загрузочную флешку читайте здесь. Инструкция по созданию флешки для Виндовс 8.1, но алгоритм абсолютно идентичен десятке.

После записи образа, вам необходимо вставить флешку в USB разъём компьютера и перезагрузить его. В дальнейшем, следуйте инструкциям на экране.

Если при загрузке компьютер не считывает флешку, то необходимо изменить приоритет загрузки в BIOS.

Заключение

Режимы Windows 10 разрешают операционной системе быть многогранной, приспосабливаться к различным задачам, усиливая позиции в одном направлении и послабляя их в другом. Благодаря таким опциям ОС Windows 10 умеет совмещать комфорт, безопасность и многофункциональность, подстраиваясь под нужды пользователей.

Получение доступа к выбору способа загрузки

Чтобы вызвать меню выбора режимов, необходимо выполнить следующее:

  1. Если система загружается и работоспособна, воспользуйтесь одним из способов входа в загрузочное меню — например, перейдите по пути «Пуск»«Выключение», затем зажмите клавишу Shift и кликните «Перезагрузка».
    Перзагрузится в режим восстановления для получения вариантов загрузки windows 10

    Если система не стартует, при включении компьютера появится соответствующее сообщение, воспользуйтесь в нём кнопкой «Дополнительные варианты восстановления».

  2. Загрузка в режим восстановления для получения вариантов загрузки windows 10

  3. Выберите опцию «Поиск и устранение неисправностей».
  4. Поиск и устранение неисправностей для получения вариантов загрузки windows 10

  5. Затем укажите «Дополнительные параметры».
  6. Дополнительные параметры для получения вариантов загрузки windows 10

  7. Откройте пункт «Параметры загрузки».
  8. Вызвать параметры для получения вариантов загрузки windows 10

  9. Воспользуйтесь кнопкой «Перезагрузить».
  10. Вторая перезагрузка для получения вариантов загрузки windows 10

    После загрузки появится следующее меню.

    Меню вариантов загрузки windows 10

    Далее мы рассмотрим каждый из этих пунктов.

«Включить отладку»

Первый из них, доступный по нажатию клавиши F1, активирует отладку ядра: продвинутый метод диагностики, при котором информация о старте Виндовс может быть передана на другой компьютер или устройство с запущенным отладчиком. Этот метод рекомендуется для опытных пользователей.

«Включить ведение журнала загрузки»

Следующий вариант, который активируется нажатием на F2, подразумевает ведение подробного журнала запуска, в частности загруженных драйверов, что поможет определить сбойный элемент ПО. Лог хранится в документе ntbtlog.txt в установочной папке Виндовс – как правило, это C:Windows. Если ОС запускается корректно, загляните в указанный файл для определения причины проблем. Чтобы просмотреть ntbtlog.txt, если система стартует со сбоями, выберите одну из опций «Безопасного режима», о которых мы поговорим ниже.

Журнал запуска как один из вариантов загрузки windows 10

«Включить видеорежим с низким разрешением»

Иногда бывает так, что ОС не загружается, поскольку монитор не поддерживают стандартные для «десятки» разрешение и цветовое пространство. В такой ситуации доступ к системе возможен с опцией запуска под названием «Включить видеорежим с низким разрешением» — щелкните F3, чтобы ею воспользоваться.

Варианты «Безопасного режима»

Наиболее часто используемая дополнительная опция загрузки — «Безопасный режим», у которого есть три вариации:

Lumpics.ru

  • «Включить безопасный режим» – стандартный вариант, при котором отключаются все изменения в ОС. Для его выбора нажмите F4;
    Безопасный режим как один из вариантов загрузки windows 10

    Читайте также: Как войти в «Безопасный режим» в Windows 10

  • «Включить безопасный режим с загрузкой сетевых драйверов» – продвинутая разновидность предыдущего, запускаемая по нажатию F5, где дополнительно активируются доступ в интернет и поддержка сетевых протоколов, что может понадобиться системным администраторам;
  • «Включить безопасный режим с поддержкой командной строки» – вместе с критически важными компонентами запускается ещё и «Командная строка» со всеми её утилитами, что полезно как для диагностики, так и ради восстановления работоспособности ОС. Данную опцию можно вызвать нажатием на F6.

«Отключить обязательную проверку подписи драйверов»

Ещё с Windows Vista компания Microsoft в целях безопасности требует, чтобы все драйвера имели сертифицированную цифровую подпись – в противном случае пакет просто откажется устанавливаться. Однако разработчики знают о том, что для задач тестирования может потребоваться инсталляция неподписанных драйверов, и предлагают особый метод запуска, который активируется нажатием на F7 в окне дополнительных параметров. Обратите внимание, что обычному пользователю этим вариантом стоит пользоваться только в самом крайнем случае.

«Отключить ранний запуск антивредоносной защиты»

В «десятке» Windows Defender стал ещё более продвинутым и запускается одновременно с системой. Данное антивирусное ПО нередко замедляет старт ОС или вовсе мешает ему, если вы столкнулись с ложным срабатыванием. Для устранения подобных проблем следует воспользоваться вариантом без запуска драйвера антивируса, доступным по нажатию клавиши F8.

«Отключить автоматический перезапуск после сбоя»

Виндовс 10, как и предыдущие редакции ОС от Майкрософт, по умолчанию перезапускается, если в процессе её работы произошел сбой. Данная возможность не всегда полезна – например, во время тестирования ПО либо какого-то из новых устройств. Деактивировать автоматический перезапуск можно посредством специального режима — для его использования нажмите на клавишу F9.

Мы кратко рассмотрели дополнительные варианты загрузки Windows 10. Как видим, не все из них будут полезны рядовому пользователю.

Еще статьи по данной теме:

Помогла ли Вам статья?

Когда в самый не подходящий момент не запускается windows 10, возникает буря эмоций и точно не положительных. Кажется что все пропало… Но, не все так критично, как может показаться на первый взгляд. И в данном видеоуроке мы ответим на вопрос: — Почему может не запускаться Windows 10? И рассмотрим различные методы восстановления работоспособности операционных систем Windows.

Конечно же причин подобного поведения может быть множество, от аппаратных до программных. Но чаще всего это связанно с некорректным завершением работы операционной системы.

Про восстановление работы не загружающейся Windows 7 я уже записывал подробное видео. Но, так как в Windows 10 все было основательно переработано, и я бы не сказал, что в лучшую сторону, то настало время записать еще одно видео на данную тему.

И тут может быть 3 ситуации:

1) Выдается ошибка – тут все индивидуально, в зависимости от ошибки. Слава богу, что в интернете полно информации как можно решить подобную проблему.

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 2

2) Система пытается автоматически восстановить работоспособность и если это не получается, то предлагает воспользоваться дополнительными параметрами для восстановления работоспособности системы

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 3

3) Ничего не выдается, просто вечная перезагрузка или рабочий стол не загружается (появляется черный экран и указатель мыши)

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 4

И в рамках данного видео мы рассмотрим ситуации, когда системе не удалось автоматически восстановить работоспособность и когда инструмент восстановления просто не запускается.

Автоматическое восстановление не удалось восстановить компьютер

В данной ситуации мы переходим в «Дополнительные параметры» и тут есть следующий выбор:

  • Продолжить – продолжить попытку загрузки операционной системы Windows 10. Но, этот метод скорее всего потерпит неудачу, иначе у нас система загрузилась бы без проблем.
  • Выключить компьютер, ну тут все понятно
  • Поиск и устранение неисправностей, на этом пункте остановимся подробнее

Вернуть компьютер в исходное состояние (вы сможете сохранить или удалить свои личные данные и затем переустановить Windows). Это самый крайний вариант решения проблемы, так как все настройки операционной системы Windows 10 будут сброшены до заводских.

Дополнительные параметры. И здесь давайте будем рассматривать последовательность используемых инструментов в том порядке, в котором лично я бы их использовал, чтобы попытаться восстановить работоспособность системы:

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 5

— Восстановление при загрузке (устранение неполадок, мешающих загрузке Windows) Можно попробовать этот вариант, как правило он особого эффекта не дает. Как раз после безуспешной попытки устранить неполадки, мешающие загрузке Windows и появляются дополнительные параметры восстановления.

— Параметры загрузки (настройка параметров загрузки Windows) – здесь нам предоставляются дополнительные параметры загрузки операционной системы Windows 10. Чтобы воспользоваться ими нужно перезагрузить систему. Давайте перезагрузимся, чтобы посмотреть, как все это выглядит.

Это аналог дополнительных параметров загрузки, когда в ХР или 7 при загрузке нажимаем на F8. Только тут нет самого главного пункта «Последняя удачная конфигурация», собственно, как и самой функции загрузки дополнительных параметров системы через кнопку F8. В 8 и 10 эту функцию отключили, чтобы увеличить скорость загрузки операционной системы. На мой взгляд, это просто глупо, жертвовать такими жизненно важными функциями, ради ускорения времени загрузки ОС.

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 6

Данную функцию можно восстановить вручную, но придется потанцевать с бубном. И на эту тему я планирую сделать отдельное видео. А в этом видео посмотрим, что у нас есть по умолчанию.

  • Включить отладку – запускает Windows в расширенном режиме устранения неполадок
  • Включить ведение журнала загрузки – при данном способе создается текстовый файл со списком всех установленных драйверов, это может помочь при расширенной диагностике.
  • Включить видеорежим с низким разрешением – в ситуации если у вас какие-то проблемы с изображением. Допустим, вы указали очень большое разрешение экрана, которое не поддерживает монитор и через данный пункт вы сможете эти изменения отменить.
  • Безопасный режим – ну, тут все понятно, загрузка только с основными драйверами и службами. Первым делом стоит запуститься в этом режиме, чаще всего это помогает восстановить работоспособность. Или как минимум, можно будет скопировать все важные файлы перед переустановкой операционной системы.
  • Безопасный режим с загрузкой сетевых драйверов – для предоставления возможности работы с сетью, как правило это сетью интернет для поиска информации по устранению неисправности.
  • Безопасный режим с поддержкой командной строки – загрузка командной строки без пользовательского интерфейса.
  • Отключить обязательную проверку подписи драйверов – может потребоваться при установке драйверов, содержащие неправильные подписи. К примеру, я не мог поставить на 10 драйвер довольно старого принтера, он просто не хотел ставиться и все. Загрузившись в этом режиме, мне получилось установить драйвер и все заработало! Но, по сути на загрузку операционной системы этот пункт никак не влияет.
  • Отключить ранний запуск антивредоносной защиты – при загрузке выполняется проверка драйверов на предмет угроз, и если защита блокирует драйвер или он заражен, то загрузиться не получится. Так что можно попробовать отключить ранний запуск защиты, чтобы запуститься и удалить его вручную.
  • Отключить автоматический перезапуск после сбоя — Этот вариант следует выбирать в случае, если Windows вошла в цикл, когда сбой в работе системы вызывает перезапуск и вы не успеваете увидеть сообщение об ошибке, которая вызывает перезапуск.
  • F10 Запустить среду восстановления — это тоже меню, с которым мы работали в самом начале.

— Восстановление системы (Восстановление Windows с помощью точки восстановления) – восстановление из контрольной точки, если конечно у вас настроено создание контрольных точек восстановления системы.

— Восстановление образа системы – лично я на домашнем и рабочем компьютере всегда настраиваю систему архивации, но, как правило это никто не делает, так что, думаю это вам вряд ли поможет. Но, если хотите узнать, как настроить систему архивации, то посмотрите мое видео на эту тему (ссылка в описании)

— Командная строка – если вы нашли причину неисправности и её можно устранить использую командную строку. Допустим, изменить диск, с которого должна загружаться операционная система.

— Вернуться к предыдущей версии – если вы обновляли версию Windows 10, то можно попытаться откатиться до прошлой версии. Но, перед этим желательно все важное сохранить на флешку или переносной жесткий диск.

Диагностическое меню не появляется.

Если дополнительные параметры появились, то относительно понятно, что делать. А если не появились, и система находится в постоянной перезагрузке?

В данной ситуации мы может его вызвать через интерфейс установки Windows 10. Загружаемся с установочного образа Windows 10 (BIOS Приоритет загрузки Образ Перезагрузка Далее Восстановление системы). А тут уже привычное для нас диагностическое меню, за исключением того, что нет пункта дополнительные параметры, а он нам нужен, пожалуй, больше всего.

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 7

Но, не беда, сейчас мы через командную строку включим отображение дополнительных параметров по нажатии на F8, как это было в ХР и 7.

bcdedit /set {default} bootmenupolicy legacy

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 8

Перезагружаемся Извлекаем загрузочное устройство или меняем приоритет загрузки F8 И вот знакомое уже нам меню, из которого можем пробовать различные варианты восстановления работоспособности системы.

ne zapuskaetsya windows 10 metody vosstanovleniya raboty 9

ВИДЕО

В описании данного видео, есть временные метки, по которым вы сможете сразу перейти к моменту в видео, который вас больше всего интересует.

Список временных меток:

  • 02:29 – Поиск и устранение неисправностей
  • 02:36 — Вернуть компьютер в исходное состояние
  • 02:53 — Дополнительные параметры
  • 03:11 — Восстановление при загрузке
  • 03:36 — Параметры загрузки
  • 05:15 — Включить отладку
  • 05:23 — Включить ведение журнала загрузки
  • 05:36 — Включить видеорежим с низким разрешением
  • 06:12 — Безопасный режим
  • 06:43 — Безопасный режим с загрузкой сетевых драйверов
  • 07:16 — Безопасный режим с поддержкой командной строки
  • 07:27 — Отключить обязательную проверку подписи
  • 08:27 — Отключить ранний запуск антивредоносной защиты
  • 08:49 — Отключить автоматический перезапуск после сбоя
  • 09:30 — F10 Запустить среду восстановления
  • 10:05 — Восстановление системы
  • 10:40 — Восстановление образа системы — https://sys-team-admin.ru/videouroki/raznoe/65-arkhivatsiya-i-vosstanovlenie-sistemy-sredstvami-windows-7.html
  • 11:12 — Командная строка
  • 11:45 — Вернуться к предыдущей версии
  • 12:30 – Если диагностическое меню не появляется.
  • 14:12 – Включение отображения дополнительных параметров по нажатии на F8

Системные программисты, в частности под ОС Windows практически лишены того объема информации, который доступен разработчикам высокоуровневых программ. Можно выделить три основных источника, позволяющих заполнить пробелы при разработке драйверов для Windows:

  1. Печатные издания.

  2. Официальная документация DDK от Microsoft.

  3. Open-source проекты.

Сложно поспорить с тем, что порог вхождения в область разработки драйверов достаточно высокий, однако желание погрузиться в это направление пропадает еще на этапе написания HelloWorld. Начинающему программисту сложно найти ответы на казалось бы банальные вопросы:

  1. Как запустить драйвер?

  2. Как понять, что драйвер работает?

  3. Как отлаживать драйвер?

В этой статье я постараюсь максимально подробно описать несколько (вообще их гораздо больше) способов установки и отладки драйвера, удобные по моему субъективному мнению, на примере реализации простого драйвера, выполняющего единственное действие — вывод при запуске отладочного сообщения «Hello from Windows kernel mode!!».

Предварительные условия

Разрабатывать драйвер я буду в Microsoft Visual Studio 2019 (на момент публикации Microsoft предлагает WDK для Visual Studio 2022, совместимый только с Windows 11, переходить на которую пока не планирую). Для разработки драйвера необходимо скачать установить пакет DDK с официального сайта Microsoft.

Microsoft предлагает несколько версий (соответствуют сборкам самой операционной системы), однако пакеты WDK для Windows 10 имеют обратную совместимость, то есть самая свежая версия WDK позволяет реализовать драйвер для младших сборок Windows. Однако, как обычно, есть один нюанс, касающийся настройки тестовой системы (об этом будет написано ниже), поэтому также стоит скачать пакет WDK для вашей тестовой системы. Посмотреть номер сборки можно утилитой winver, (Win+R -> winver -> Enter).

В моем случае самая свежая версия WDK — это WDK для Windows 10 версии 1903 (статья написана сильно раньше как пособие для студентов, на момент публикации доступна версия 2004) на виртуальную машину будет установлена Windows 10 build 1709, поэтому я также скачиваю (но не устанавливаю) WDK для Windows 10 версии 1709.

Для запуска и отладки драйвера будет использована виртуальная машина с ОС Windows 10 x64 на VMWare Workstation.

Для просмотра отладочных сообщений от драйвера используется утилита DbgView из пакета Sysinternals.

Создание проекта

Сначала предлагается реализовать сам драйвер. Так как по плану он должен обладать минимальным функционалом, то этот процесс займет небольшое количество времени.

Шаг 1. Запустить Microsoft Visual Studio.

Шаг 2. Приступить к созданию нового проекта KMDF Driver.

Нажать на кнопку создания нового проекта (Create a new project), в списке типов проекта выбрать KMDF Driver, Empty, нажать Next.

Окно создания нового проекта

Окно создания нового проекта

Шаг 3. Назначить имя проекта и его расположение.

Я назову проект HelloWorldDriver.

Настройки при создании проекта

Настройки при создании проекта

Шаг 4. Добавить файл исходного кода драйвера.

Добавить файл исходного кода Project->Add new Item->C++ File (.cpp). Дать название файлу, например, HelloWorldDriver.c

При вводе имени файла укажите расширение *.c. Visual Studio определяет целевой язык по расширению файла, таким образом исходный код, расположенный в файлах с расширением *.c воспринимается как код на языке Си.

Добавление файла в проект

Добавление файла в проект

Шаг 5. Написать исходный код драйвера.

Далее приведен исходный код нашего учебного драйвера с короткими комментариями.

Вообще говоря, исходный код несколько избыточен. Функция выгрузки драйвера не является обязательной, однако без нее драйвер будет считаться невыгружаемым, что существенно усложняет установку новой версии. Так, при возможности выгрузки драйвера для его обновления достаточно остановки, замены бинарного файла и запуска, тогда как для невыгружаемого драйвера придется перезагружать систему.

Также не является обязательным примение макроса UNREFERENCED_PARAMETER. По умолчанию (и это правильно) проекты типа Windows Driver компилируются с флагом /WX — Treat Warnings As Errors, что не позволяет скомпилировать драйвер даже с предупреждениями, одним из которых является C4100: unreferenced formal parameter —
неиспользуемый параметр
. Можно либо отключить этот флаг в настройках проекта Project->Properties->C/C++->General, параметр Threat Warnings As Errors, однако применение макроса более предпочтительно, так как заставляет разработчика в большей степени отдавать отчет своим действиям.

// Основной файл WDK
#include <ntddk.h>

// Объявление функции выгрузки драйвера
VOID DriverUnload(PDRIVER_OBJECT driverObject);

// Точка входа в драйвер (аналог функции main)
NTSTATUS DriverEntry(IN PDRIVER_OBJECT driverObject, IN PUNICODE_STRING registryPath)
{
  // Отметка параметра неиспользуемым
  UNREFERENCED_PARAMETER(registryPath);

  // Печать отладочного сообщения
  DbgPrint("Hello from Windows kernel mode!!");

  // Регистрация функции выгрузки драйвера
  driverObject->DriverUnload = DriverUnload;

  return STATUS_SUCCESS;
}

// Функция выгрузки драйвера
VOID DriverUnload(IN PDRIVER_OBJECT driverObject)
{
  // Отметка параметра неиспользуемым
  UNREFERENCED_PARAMETER(driverObject);
  // Вывод отладочного сообщения
  DbgPrint("Goodbye!");
}

Шаг 6. Собрать драйвер.

Теперь можно скомпилировать драйвер Build->Build Solution и посмотреть, какие файлы сгенерированы. Необходимо учитывать платформу тестовой системы и осуществлять сборку правильно. У меня в качестве тестовой системы будет 64-разрядная версия Windows, поэтому мне нужно изменить конфигурацию на x64.

Выбор платформы

Выбор платформы

В выходной директории (по умолчанию это $SolutionDirx64Debug) появились файлы. Краткое описание каждого из них:

  1. HelloWorldDriver.cer — сертификат.

    Каждый драйвер должен иметь цифровую подпись (начиная с 2017 года все драйверы должны быть подписаны самой Microsoft, обязательное условие — прохождение тестов WHQL), хотя в сегодняшнем примере сертификат не нужен совсем. Вопросы сертификации выходят за рамки данной статьи.

  2. HelloWorldDriver.inf — вспомогательный файл для установки драйвера с
    использованием Мастера установки Windows.

  3. HelloWorldDriver.pdb — отладочные символы.

  4. HelloWorldDriver.sys — сам драйвер.

Драйвер написан, собран и готов к установке на целевую систему.

Установка драйвера

Можно предложить два основных способа установки драйвера: с помощью мастера установки и вручную, с использованием утилиты SC (вообще говоря можно даже реализовать программу, которая используя функции OpenSCManager, CreateService, OpenService и другие из Windows API позволит управлять драйверами и службами). Однако мастер установки предполагает установку драйверов для устройств, а написанный драйвер таковым не являтеся, поэтому установка будет произведена с помощью утилиты SC.

Перед установкой драйвера (точнее перед первым запуском) необходимо включить тестовый режим, позволяющий устанавливать неподписанные драйверы. Сделать это можно выполнив в командной строке от имени администратора bcdedit /set testsigning ON, после чего необходимо перезагрузить систему. Хотя при сборке проекта был создан самоподписанный сертификат, ОС Windows 10 не позволит запустить драйвер, подписанный таким сертификатом (как было сказано выше, в новых версиях ОС драйвер должны иметь подпись от Microsoft).

Далее необходимо выполнить следующие действия:

Шаг 1. Скопировать файл HelloWorldDriver.sys на целевую систему.

Скопированный на целевую систему драйвер
Скопированный на целевую систему драйвер

Шаг 2. Открыть командную строку от имени администратора.

Командная строка
Командная строка

Шаг 3. Выполнить команду установки драйвера.

Для установки драйвера при помощи системной утилиты SC нужно исполнить команду SC CREATE <название_драйвера> binPath= <путь_до_sys_файла> type=kernel

Установка драйвера

Установка драйвера

Драйвер установлен, но не запущен. Информацию о текущем состоянии драйвера можно получить командой SC QUERY <название_драйвера>

Драйвер установлен и остановлен

Драйвер установлен и остановлен

Перед первым запуском предлагается запустить утилиту DbgView и убедиться, что драйвер действительно выводит отладочное сообщение. Утилиту необходимо запустить от имени администратора, а после запуска включить захват сообщения из ядра нажатием Capture->Capture Kernel и включить подробный режим вывода нажатием Capture->Enable Verbose Kernel Output. WDK предлагает расширенную версию функции отладочной печати — DbgPrintEx, которая позволяет задать уровень важности сообщения, это позволяет фильтровать сообщения с уровнем важности меньше заданной.

Утилита DbgView

Утилита DbgView

Запустить драйвер можно командой SC START <название_драйвера>, в окне DbgView должно появиться заданное в исходном коде сообщение.

Полученное от драйвера сообщение

Полученное от драйвера сообщение

Может случиться, что после запуска драйвера сообщение в DbgView не появится. В таком случае нужно попробовать перезагрузить систему. Скорее всего, настройки DbgView, касающиеся включения подробного режима, применяются не сразу.

Остановить драйвер можно командой SC STOP <название_драйвера>, а в DbgView снова появится отладочная строка.

Остановка драйвера

Остановка драйвера

Остановить драйвер позволила зарегистрированная «ненужная» функция DriverUnload. В качестве эксперимента можете удалить ее из исходного кода и попробовать повторить действия по запуску и остановке драйвера. Он запустится, но остановить его не получится.

Отладка драйвера

Очень сложно писать программы без ошибок, если это не «Hello world», конечно. Процесс разработки включает внесение ошибок в код, обнаружение наличия ошибок, поиск источников ошибок (конкретных мест в исходном коде) и их устранение. Сложно поспорить с тем, что самым трудоемким процессом из вышеперечисленных является именно поиск, потому как вносятся ошибки чаще всего прозрачно для программиста (то есть случайно), проявляют они себя тоже сами (или их обнаруживают тестировщики, а еще хуже — пользователи).

Отладка программы может осуществляться различными способами. Например, часть моих студентов в курсе, посвященному языку PHP, отлаживают программы путем вставки в определенные участки кода конструкций типа echo ("I'm here42") или print("Var1 = $var1"). Почему так? Ответ на этот вопрос во многом подтолкнул меня к созданию этой статьи. Всё дело в том, что для PHP подключение привычного отладчика (а студенты сначала изучали язык C++ в IDE, где вполне успешно использовали «коробочные» возможности установки точек остановки, пошагового исполнения, окон watch и memory) подразумевает выполнение некоторого обряда: загрузка дополнительной библиотеки для php (xdebug, например), редактирование php.ini, установка расширения в браузере. И это при том, что в сети достаточно источников, описывающих этот процесс. Материалов по отладке драйверов гораздо меньше.

Я выделяю два основных способа отладки драйвера для ОС Windows: нормальный, с помощью утилиты WinDbg, и удобный — средствами Visual Studio.

Подготовка виртуальной машины

Пошаговая отладка драйвера подразумевает остановку его выполнения. Однако в архитектуре на уровне ядра ОС Windows, грубо говоря, деление на различные драйверы достаточно условно, можно представить все ядро как одну программу, где различные компоненты (драйверы) — это библиотеки. Остановка в исполнении любого драйвера подразумевает остановку всей системы. Поэтому отладка должна производиться на удаленном компьютере (хотя методом вставки строк кода с конструкцией DbgPrint(«…») можно отлаживать и локально). Удобно заменить удаленный компьютер виртуальной машиной, как это и делается в подавляющем большинстве случаев.

Так как драйвер исполняется на удаленном компьютере, то связь с отладчиком осуществляется по физическому интерфейсу: COM, Ethernet, USB, FireWire. Наибольшую популярность получила отладка по COM-интерфейсу. Признаюсь, вообще не видел примеров с иными.

На виртуальную машину необходимо добавить последовательный интерфейс, выполнив следующую последовательность действий:

Шаг 1. Открыть настройки виртуальной машины.

Запустить VMWare, открыть настройки виртуальной машины (нажатием Edit virtual machine settings).

Главное окно VMWare

Главное окно VMWare

Шаг 2. Добавить последовательный интерфейс.

В окне настроек виртуальной машины нажать кнопку Add.

Окно настроек

Окно настроек

В появившемся окне выбрать Serial Port, нажать Finish.

Окно редактирования устройств

Окно редактирования устройств

Шаг 3. Настроить последовательный порт

Для добавленного последовательного порта задать следующие настройки: Connection: Use named pipe, в поле для ввода ввести имя канала: \.pipe<pipename>, а в выпадающих списка выбрать соответственно This end is the server и The other end is an application.

Настройки последовательного порта

Настройки последовательного порта

Отладка с использованием WinDbg

Необходимо перевести тестовую систему в отладочный режим. Для этого нужно запустить ее и от имени администратора исполнить команду bcdedit /debug on, а также настроить тип отладки. В примере используется отладка по COM-порту, поэтому в командной строке необходимо выполнить команду bcdedit /dbgsettings serial debugport:2 (значение параметра debugport должно совпадать с номером последовательного порта в настроках виртуальной машины. Скорее всего это будет Serial Port 2). После перезагрузки системы активируется отладочный режим.

После активации режима отладки система может «зависать» при включении и выключении. Я так и не смог разобраться, в каких случаях это проиcходит, а в каких нет. Если при включении или выключении системы она «зависла», то достаточно просто запустить отладчик (об этом ниже) и загрузка продолжится.

WinDbg внешне выглядит не очень современно. Особенно это заметно на фоне привычной разработчикам программ для Windows среды Visual Studio. На момент написания статьи вышла в свет новая версия утилиты отладки — WinDbg Preview, однако она доступна только в Microsoft Store, а у меня Disable Windows Spying отключил возможность установки приложений из магазина. Хотя скриншоты на портале Microsoft выглядят многообещающе.

Скриншот новой версии отладчика WinDbg Preview

Скриншот новой версии отладчика WinDbg Preview
Стартовое окно классического WinDbg
Стартовое окно классического WinDbg

Теперь необходимо настроить WinDbg. Наиболее подробное описание WinDbg представлено на сайте Microsoft, мы же рассмотрим лишь основы. К основным настройкам WinDbg можно отнести следующие:

  1. Тип подключения к отлаживаемой системе, её адрес.

  2. Расположение исходных кодов отлаживаемых драйверов.

  3. Расположение символьной информации.

WinDbg позволяет задать все эти опции в виде аргументов командной строки, поэтому удобно (я делаю так) создать необходимое количество ярлыков исполняемого файла (сам исполняемый файл WinDbg имеет путь Program Files (x86)Windows Kits10Debuggersx64windbg.exe), в свойствах ярлыка задать необходимые параметры:

  1. -k. Обозначает режим отладки ядра.

  2. com:port=\.pipeWin10,pipe. Обозначает порт отладки (именование канала должно совпадать с тем, которое было указано в настройках виртуальной машины).

  3. -y srv*C:ProgramDataMicrosoftSymbols*http://msdl.microsoft.com/download/symbols. Определяет расположение символьной информации. Если отладочные символы не найдены в локальном хранилище, то они будут загружены из указанного репозитория.

  4. -srcpath C:dev. Определяет расположение файлов исходного кода (можно указывать не директорию конкретного проекта, а директории выше в иерархии).

  5. -WF Dark.WEW. Определяет файл с сохраненным рабочим пространством (WorkSpace). В рабочее пространство входит набор и расположение окно, шрифты, цвета шрифтов и фона. Мне показалось очень удобным однажды настроить WinDbg, а далее использовать эти настройки. За основу своего WorkSpace я взял найденную давно темную тему, далее удобно расположил окна, перенастроил некоторые шрифты.

Свойства ярлыка

Свойства ярлыка

Мне показались удобными такие расцветка и расположение окон:

Возможная настройка рабочего пространства

Возможная настройка рабочего пространства

Теперь давайте отладим драйвер. Для того, чтобы выполнение остановилось, необходимо добавить инструкцию int 3, в исходном коде драйвера это можно сделать, вставив макрос DbgBreakPoint();. Предлагается установить точку останова в первой строке функции DriverEntry и попытаться запустить драйвер. Нет большой разницы, когда запускать WinDbg. В определенные моменты выполнение инструкций прекращается, визуально система «зависает» в ожидании подключения отладчика. То есть можно сначала запустить драйвер, а только потом WinDbg, а можно и наоборот.

Я запустил WinDbg, после чего запустил драйвер. Отладчик подключился к тестовой системе, WinDbg автоматически загрузил исходный код драйвера.

Установленный breakpoint

Установленный breakpoint

WinDbg позволяет производить привычные действия отладки: шаг с заходом, шаг без захода, исполнение до курсора, а также предоставляет возможность наблюдать за участком памяти, значениями регистров.

Отладка средствами Visual Studio

В новых версиях Visual Studio (начиная с 2013) также появилась возможность отладки драйверов. Кроме непосредственно отладчика Visual Studio предлагает широкие возможности по установке драйвера на удаленную систему, что позволяет производить отладку драйвера практически идентично отладке обычной программы (Сборка->расстановка точек останова->запуск отладки).

Для использования функций Visual Studio также необходимо обеспечить отладочное соединение с тестовой системой, в нашем случае это COM-порт, остальные действия не требуются (включать тестовый и отладочный режимы не нужно). Visual Studio позволяет автоматически настроить удаленную систему. Для этого на тестовую систему нужно установить пакет WDK Test Target Setup, который находится в директории %Program Files (x86)%Windows Kits10Remote%Платформа%. Этот .msi файл нужно скопировать на тестовую систему и установить.

Теперь пошагово сконфигурируем тестовую систему.

Шаг 1. Запустить Visual Studio.

Окно Visual Studio
Окно Visual Studio

Шаг 2. Открыть конфигуратор тестовых устройств.

Открыть конфигуратор тестовых устройств можно нажатием кнопки меню Extensions->Driver->Test->Configure Devices.

Запуск конфигуратора устройств

Запуск конфигуратора устройств

Шаг 3. Добавить и сконфигурировать тестовое устройство.

В первую очередь необходимо открыть окно конфигуратора нажатием кнопки Add New Device.

Окно конфигуратора устройств

Окно конфигуратора устройств

В окне ввести отображаемое имя тестовой системы, сетевое имя (можно ввести просто IP-адрес, либо включить сетевое обнаружение на тестовой системе), в Provisioning Options выбрать пункт Provision device and choose debugger settings, нажать Next.

Окно конфигуратора устройств

Окно конфигуратора устройств

В следующем окне раскрыть вкладку Windows Debugger — Kernel Mode и настроить опции:

  1. Connection Type: Serial

  2. Baud Rate: 115200

  3. Pipe: Checked (отметить)

  4. Reconnect: Checked (отметить)

  5. Pipe name: \.pipeWin10

  6. Target Port: com2 (или иной, должен совпадать с номером в настройках
    виртуальной машины)

Нажать Next.

Настройка отладчика

Настройка отладчика

Подождать выполнения настройки системы. В виртуальной машине вы можете наблюдать процессы создания нового пользователя, установку пакетов, выполнение скриптов. Это нормально. По окончании настройки виртуальная машина будет перегружена, а в Visual Studio появится сообщение об окончании настройки. В моем случае возникла одна ошибка при создании точки восстановления системы. Это можно проигнорировать. Нажать Finish.

Процесс настройки тестовой системы

Процесс настройки тестовой системы

Настройка тестовой системы почти закончена. На нее установлены средства TAEF — Test Authoring and Execution Framework и WDTF — Windows Driver Test Framework, позволяющие Visual Studio автоматически удалять старую версию драйвера, устанавливать новую, а также проводить автоматическое тестирование (вопрос автоматических тестов выходит за рамки данного материала).

ВНИМАНИЕ!!! В самом начале статьи я рекомендовал выяснить версию Windows на тестовой машине. Если она совпадает с версией установленного пакета WDK, то данный абзац можно не читать. WDK имеет обратную совместимость, то есть установленная WDK 1903 позволяет разрабатывать драйверы для предыдущих сборок (можно найти этот параметр в свойствах проекта, хотя я не сталкивался с ситуацией, когда драйвер не работает на некоторой сборке), однако пакет WDK — это не только набор заголовочных файлов, расширение для Visual Studio, но еще и набор вспомогательных утилит для отладки (тот же WinDbg) и тестирования. В том числе в пакет WDK входит и названный выше WDTF. И он обратной совместимости не имеет (или, возможно, не имеет для некоторых сборок). Для проверки наличия WDTF необходимо проверить на тестовой системе содержимое директории C:Program Files (x86)Windows Kits10TestingRuntimes. Если там содержатся поддиректории TAEF и WDTF, то все в порядке, а если только TAEF, как в моем случае, то нужно отдельно установить WDTF из пакета WDK версии, совпадающей с версией тестовой системы (напомню, у меня это Windows 10 1709). На тестовую систему из директории WDKInstallers необходимо скопировать файл Windows Driver Testing Framework (WDTF) Runtime Libraries соответствующей разрядности и попытаться установить его командой msiexec /i «Windows Driver Testing Framework ….». Установщик выдаст ошибку отсутсвия .cab файла. Найдите соответствующий файл в той же директории Installers, скопируйте на тестовую машину и повторите установку. Рядом с директорией TAEF должна появиться WDTF.

Тестовая система готова к загрузке и отладке драйвера. Visual Studio предлагает различные варианты установки (Deploy) драйвера на тестовую систему, настройки доступны в свойствах проекта во вкладке Driver Install->Deployment. В первую очередь нужно выбрать тестовую машину из выпадающего списка. Выше она уже была сконфигурирована и теперь доступна.

Настройки установки драйвера

Настройки установки драйвера

Подробно с различными вариантами можно ознакомиться на портале Microsoft. Мне показались наиболее понятными два из них: Install/Reinstall and Verify и Custom Command Line. Стоит отметить, что не совсем корректно работают точки остановки. Даже при их установке выполнение не прерывается. Нужно вставить как минимум одну конструкцию DbgBreakPoint(); (я это делаю первой же строкой функции DriverEntry), дальше отладку можно производить привычным для пользователя Visual Studio образом, пошаговая отладка нормально работает, установленные точки остановки тоже.

При опции Install/Reinstall and Verify драйвер будет установлен (переустановлен) и запущен, однако система будет перезагружена (это долго), а драйвер будет установлен с опцией старта при запуске системы. Для большинства случаев это не должно быть проблемой, однако если для вас важен момент запуска драйвера, то этот способ не подходит. Я устанавливаю конструкцию прерывания в первой строке DriverEntry, а также устанавливаю точку остановки на строке с выводом отладочного сообщения и возвратом из функции и нажимаю привычное F5.

Готовность к отладке

Готовность к отладке

На виртуальной машине можно увидеть исполнение скриптов. Также могут появляться сообщения об ошибках, однако даже с некоторыми ошибками все работает. В моем случае по неизвестным мне причинам установка драйвера не всегда удается с первого раза (в Visual Studio вы увидите сообщение о том, что программа завершила работу с ненулевым кодом). Но со второй-третьей попытки все начинает работать. После исполнения скриптом система перезагрузится, драйвер начнет загружаться, исполнение остановится на конструкции DbgBreakPoint();. Отладчик Visual Studio должен подключиться к виртуальной машине, отобразить в окне с исходным кодом текущую строку и нормальным образом реагировать на пошаговое исполнение, показывать значения переменных, отображать содержимое памяти, и, что важно, останавливаться на установленных средствами Visual Studio точках остановки.

Окно Debugger Immediate Window точно такое же, как и в WinDbg. Точнее говоря, это одно и то же. Поэтому Visual Studio через него поддерживает все команды WinDbg, а среди них много полезных.

Подключенный отладчик

Подключенный отладчик
Содержимое окон Locals и memory
Содержимое окон Locals и memory

Еще один способ установки драйвера, который я использую — это Custom Command Line. Можно создать простой bat-скрипт, содержащий команды по установке и запуску драйвера. Visual Stuio позволяет указать дополнительные файлы, которые нужно скопировать на тестовую систему, однако эта функция не работает. Поэтому создаем файл createandstart.bat на диске C, который содержит две строки: SC CREATE HelloWorldDriver binPath= C:DriverTestDriversHelloWorldDriver.sys type=kernel и SC START HelloWorldDriver

Скрипт установки и запуска

Скрипт установки и запуска

А в поле ввода под опцией Custom Command Line указать C:createandstart.bat

Настрока установки

Настрока установки

При нажатии F5 драйвер установится, запустится и Visual Studio укажет на строку с вызовом макроса DbgBreakPoint();

Простая отладка средствами Visual Studio

Однако все возможности Visual Studio Deployment раскрываются при создании тестов. Для простой отладки все это лишнее, поэтому, возможно, будет гораздо проще настроить тестовую систему для отладки самостоятельно (утилитой bcdedit), далее вручную запускать драйвер, а отлаживать его средствами Visual Studio. Такой подход представляет собой что-то среднее между рассмотренными выше. Для подготовки к отладке необходимо выполнить следующие шаги:

Шаг 1. Подготовить виртуальную машину.

На виртуальной машине нужно включить тестовый и отладочный режимы, а также установть драйвер командой SC CREATE.

Шаг 2. Сконфигурировать Visual Studio.

В Visual Studio открыть конфигуратор тестовых устройств, однако на первом шаге выбрать вариант Manual configure debuggers and do not provision, нажать Next, в следующем окне настроить все идентично, как на рисунке.

Ручная настройка

Ручная настройка
Настройка отладчика
Настройка отладчика

Теперь на тестовой системе можно запустить драйвер командой SC START. Выполнение драйвера остановится на строке DbgBreakPoint();, а виртуальная машина будет ожидать подключения отладчика. В Visual Studio нужно нажать Debug->Attach To Process, в появившемся окне в поле Connection type выбрать Windows Kernel Mode Debugger, в поле Connection target — имя настроенной выше тестовой машины, нажать Attach.

Подключение отладчика к процессу

Подключение отладчика к процессу

Очень вероятно, что вы получите ошибку Frame is not in module:

Несоответствие драйвера исходному коду

Несоответствие драйвера исходному коду

Введите в поле ввода окна Debugger Immediate Window команду .reload и переключитесь на файл с исходным кодом. Если и это не помогло, скорее всего, вы что-то изменили в исходном коде, скомпилировали, но забыли скопировать новую версию драйвера. Пересоберите (для надежности) проект, скопируйте его на тестовую машину, запустите драйвер, подключие отладчик снова.

Я считаю этот способ самым удобным при отладке драйвера. Он позволяет использовать более комфортную и привычную Visual Studio, при этом не тратить целые минуты на установку новой версии драйвера на тестовую систему.

Заключение

Разработка драйверов для ОС Windows — достаточно увлекательный процесс. Реализация даже мелких и простых драйверов позволяет глубже понять внутреннее устройство Windows, что весьма полезно. Однако начинающих системных программистов отпугивает не столько сложность написания непосредственно кода (как минимум, есть множество примеров), сколько сложность установки и отладки. Надеюсь, что данный материал поможет кому-то не потерять интерес в первом же проекте.

Upd

В комментариях были выражены опасения, что инструкция по установке драйвера некорректная в части отключения подписи драйверов. В результате эксперимента установлено, что все нормально и работает ровно так, как описано. Также попутно выяснилось, что можно смело качать последнюю версию WDK (для 22H2) и SDK (если у вас Windows 10, а не Windows 11) и тогда разработку можно вести в Visual Studio 2022.

Like this post? Please share to your friends:
  • Запуск windows 10 в режиме аудита
  • Запуск windows 10 в режиме администратора
  • Запуск windows 10 в безопасном режиме через bios
  • Запуск windows 10 в безопасном режиме с интернетом
  • Запуск windows 10 в безопасном режиме при запуске компьютера