Как работает пароль BIOS?

Я создал пароль BIOS. Я использую раскладку клавиатуры Dvorak. Когда я переключаю раскладку клавиатуры на Qwerty и перезагружаюсь, а затем вводим пароль в другом макете, изменений нет. Однако, когда я вошел в мою ОС, имеет место разная раскладка клавиатуры. Что тут происходит?

  • Эмуляция Numpad
  • Как настроить клавиши numpad с помощью XKB?
  • Могу ли я дать двум клавиатурам разные макеты?
  • Изменение раскладки клавиатуры с использованием символа Кириллиса
  • Карта справа от Alt до Alt вместо AltGr
  • cryptsetup luksOpen принимает только пароль через ssh
  • Плагин панели раскладки клавиатуры xfce застревает
  • Пользовательская раскладка клавиатуры сбрасывается до значения по умолчанию после ожидания или перезагрузки
  • 2 Solutions collect form web for “Как работает пароль BIOS?”

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

    Несколько подсистем

    BIOS является одной из таких подсистем. BIOS – это то, что описывает его имя. Базовая система ввода-вывода. Его задача – предоставить базовую функциональность системе, чтобы она могла обнаруживать периферийные устройства (такие как: жесткие диски, клавиатуры, мониторы и т. Д.). Другая важная функция, которую предоставляет BIOS, – это загрузочный ремень, загружающий операционную систему с указанного носителя (CD, DVD, USB, HDD и т. Д.).

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

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

    Ваш вопрос – именно такой сценарий. BIOS способен обнаруживать клавиатуру и обрабатывать ее с помощью собственного программного обеспечения / драйверов, тогда как ОС не может.

    В этом нет ничего более.

    API MS-DOS

    Если вам нужен более конкретный пример, вам не нужно смотреть дальше объекта прерывания 21, который был популяризирован MS-DOS. MS-DOS предоставила свои собственные сервисы экрана, которые сидели рядом с BIOS, потому что Microsoft хотела иметь либо более богатые функции, либо совсем другой API.

    См. Страницу wikipedia: API MSDOS .

    Современные BIOS используют любую обнаруженную USB-клавиатуру и делают некоторые обманы SMM, чтобы они выглядели как оригинальная клавиатура IBM AT или PS / 2 для BIOS и любых программ, которые используют BIOS для ввода-вывода с клавиатуры, что будет MS-DOS, Memtest86 + и некоторые загрузчики.

    Этот старый интерфейс обеспечивает сканирование кодов на ПК при нажатии и отпускании клавиши. Коды сканирования зависят от положения ключа и не знают, в каком положении находится переключатель qwerty / dvorak на вашей клавиатуре. Они не совпадают с точками ASCII или Unicode.

    введите описание изображения здесь

    Статья Википедии о scancodes может дать некоторое представление.

    Большинство, если не все BIOS, должны понимать эти scancodes, будь то настоящая клавиатура AT или PS / 2 или USB-клавиатура с PS / 2-эмуляцией. Дополнительные ключи, переключатели и т. Д. Имели бы дополнительные или нестандартные scancodes, и BIOS игнорировал бы их.

    Когда вы вошли в вашу ОС, водитель имеет возможность взять под свой контроль. Я не уверен, как именно этот интерфейс будет работать или какие драйверы будут задействованы (возможно, это нестандартный scancode, который водитель поднимает и вызывает изменение в ключевой карте или что-то в этом роде … Если это USB-клавиатура, вероятно, возможно, что переключатель qwerty / dvorak – это другое устройство ввода HID или что-то еще.)

    Interesting Posts

    Как разбить текстовый файл на новые файлы

    В каком контексте SELinux должен выполняться сценарий pam_exec?

    Почему ленточное устройство, например «/ dev / st0», не использует команды типа «cp» для копирования содержимого?

    пакеты для установки в цикле for, если они не установлены

    Обновление калибровочных заголовков Kali

    Как сделать локальное зеркало веб-сайта с всплывающим окном подтверждения?

    Ошибка при обновлении ubuntu (ошибки были обнаружены во время обработки)

    Как напечатать конкретный столбец с awk на удаленном сеансе ssh?

    LVM + как добавить к месту раздела после того, как мы увеличили диск VM

    Как отправить данные на последовательный порт и посмотреть какой-либо ответ?

    Размер увеличения XFS

    Переключение между двумя окнами в Linux

    Как вы можете получить ping для печати человекообразных временных меток?

    Добавить автозаполнение в тире

    Найти и заменить в сообщениях WordPress

    Linux и Unix - лучшая ОС в мире.