Почему порты PS / 2 не нуждаются в драйверах?

684
Hashim

Недавно я наткнулся на следующий ответ на SU, который гласит:

Если USB-порты вашей материнской платы не работают во время установки, вам придется использовать клавиатуру PS2 и клавишу Tab во время установки Windows.

Это заставило меня осознать, что, вероятно, это хорошая стратегия, чтобы всегда держать под рукой клавиатуру PS / 2 (которая, кстати, является единственным видом клавиатуры, которую я использую), но также заставило меня задуматься: почему именно нет портов и устройств PS / 2? полагаться на драйверы, как их коллеги USB делают?

Или, если точнее сказать, что все устройства нуждаются в драйверах, но по умолчанию в Windows включены только драйверы PS / 2, почему это все еще имеет место в 2018 году, когда устройства USB встречаются гораздо чаще?

1
Кроме того, я понимаю, что поддержка PS / 2 - это устаревшая поддержка, встроенная в BIOS на большинстве систем. Не специалист по ПК, но я предполагаю, что системы EFI / UEFI также имеют базовую поддержку PS / 2, но внедрение EFI / UEFI является относительно недавним явлением, которое восходит только к 2011 году. JakeGould 5 лет назад 0
@JakeGould Что касается Windows, то не имеет значения, будет ли поддержка «встроена» в BIOS или UEFI. Windows использует BIOS или UEFI только до тех пор, пока WinLoad не будет загружен (в самом начале загрузки) - после этого он использует свои собственные драйверы. Jamie Hanrahan 5 лет назад 0

2 ответа на вопрос

4
Ramhound

Почему порты PS / 2 не нуждаются в драйверах? Почему именно порты и устройства PS / 2 не зависят от драйверов, как их USB-аналоги?

Устройствам PS / 2 действительно нужны драйверы. Устройства ввода / вывода PS / 2, в частности клавиатуры и мыши, обрабатываются встроенным драйвером i8042prt.sys. Этот драйвер был включен с ранних версий Windows NT, до этого системного драйвера для устройства PS / 2 требовались специальные драйверы для правильной работы устройства.

Любое устройство PS / 2, которое НЕ является клавиатурой или мышью, также требует, чтобы драйвер устройства функционировал должным образом. Это было бы похоже на разъем Game Port, который предоставлял стандартный порт для работы джойстиков.

Аппаратно-зависимая одновременная работа клавиатуры и мыши в стиле PS / 2.

Источник: PS / 2 (i8042prt) драйвер

Если точнее будет сказать, что все устройства нуждаются в драйверах, но по умолчанию в комплект поставки Windows входят только драйверы PS / 2, почему это все еще имеет место в 2018 году, когда устройства USB встречаются гораздо чаще?

Драйверы хост-контроллера USB 2 включены во все поддерживаемые версии Windows. Windows 8.1 и новее включают драйверы хост-контроллера USB 3.

Существует 4 соответствующих драйвера «класса» USB- устройств, которые обеспечивают встроенную функциональность клавиатуры и мыши в Windows.

  • Kbdhid.sys
  • MOUHID.sys
  • kbdclass.sys
  • MOUCLASS.sys

Драйверы HID для клавиатуры и мыши

Недавно я наткнулся на следующий ответ на SU, который гласит:

Связанный ответ имеет множество проблем, самая очевидная проблема в том, что он неправильно определяет причину, по которой клавиатура и мышь не были обнаружены в среде предустановки Windows (WinPE).

Среда установки Windows 7 не поддерживает драйвер хост-контроллера USB 3, поэтому Windows 7 не может быть установлена ​​с устройства USB 3. По этой причине вы должны добавить драйвер USB 3 в ISO, чтобы установить Windows 7 с запоминающего устройства USB 3.

Несмотря на то, что Intel изменила ввод / вывод USB 3, Windows 7 больше не поддерживается, но поддержка USB 3 все еще существует. Это также тот случай, когда Intel больше не поддерживает Windows 7 с более поздними аппаратными итерациями с собственными драйверами Intel USB 3.

То есть клавиатура USB 2.0 должна работать по умолчанию в среде установки Windows 7? Hashim 5 лет назад 0
@Hashim - В прошлом я установил Windows 7 с USB-клавиатурой и мышью. Ramhound 5 лет назад 0
0
thomasrutter

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

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

Как устройства USB, так и устройства PS / 2 могут иметь драйверы, предоставляемые производителем, и они часто являются необязательными в том смысле, что все, что они делают, - это предоставляют какие-то дополнительные функции, связанные с нестандартными аспектами устройства.

Рекомендации по использованию клавиатуры PS / 2, если ваша клавиатура USB не распознается ОС, - это просто способ устранения неполадок, если что-то не так с поддержкой USB вашей системы. Есть несколько вещей, которые могут пойти не так с USB. Во-первых, поддержка USB более сложна, поэтому некоторые диспетчеры загрузки или даже интерфейсы настройки «BIOS» не поддерживают ее или поддерживают, но только когда ваша система настроена на «устаревшую» поддержку USB. Иногда также можно отключить поддержку USB, и ее повторное включение может быть затруднено без клавиатуры PS / 2. И иногда возникают другие проблемы с USB.

Нет, ничто не «встроено» в операционную систему таким образом, чтобы его нельзя было заменить. Даже так называемые «входящие» драйверы, которые входят в состав Windows, по-прежнему ведут себя как обычные драйверы и представляют свои устройства как часть дерева устройств, поскольку это приводит к лучшему общему дизайну системы. Я смотрю на _Device Manager_ моего старого компьютера, на котором показана клавиатура PS / 2, управляемая i8042prt и kbdclass; если я хочу «обновить» их до чего-то другого, я могу. Устройства PS / 2 также проверяются, они просто не поддерживают горячее подключение. grawity 5 лет назад 0
Возможно наличие сторонних драйверов для клавиатур PS / 2, но не на уровне определения аппаратного интерфейса с самим портом PS / 2, а на более высоком уровне абстракции, где он подключается к событиям клавиатуры, что позволяет ему добавлять функциональность к дополнительным нестандартным кнопкам и т. д. Что касается замены самого драйвера порта PS / 2, т.е. i8042prt.sys - я не думаю, что это возможно, или, по крайней мере, не могу подумать, по какой причине кто-то будет делать это? thomasrutter 5 лет назад 0