Большинство операционных систем (если не все) спрашивают о раскладке клавиатуры во время установки. Почему они должны знать макет? Я имею в виду, при нажатии клавиши, посылает ли клавиатура определенный сигнал, указывающий, что она представляет (если так, зачем нужно указывать раскладку?) или он отправляет сигнал с указанием своей позиции (второй необработанный, третий ключ), а затем ОС определяет, какой это ключ из заданного макета?
3 ответа
клавиатуры "отправляют" числовые коды сканирования.
Операционная система должна преобразовать скан-код в действие или отображаемый символ.
Например, Shift+3 - это те же самые коды сканирования на клавиатурах Великобритании и США, но они должны приводить к различным символам.
Последний. Каждая клавиша на клавиатуре просто отправляет число обратно в систему, которое ОС затем интерпретирует в данную клавишу с помощью наборов клавиатуры.
Например, если я нажму заданный ключ, он может отправить "26" в операционную систему. ОС тогда будет искать, что означает "26" в раскладке клавиатуры США, и возвращает "3", которое затем отправляет в данное текстовое поле.
Как уже упоминалось, клавиатура просто посылает отсканированные коды, и операционная система определяет, что они означают. Поймите также, что не каждая раскладка клавиатуры имеет легкодоступное проприетарное оборудование, поэтому многие люди в конечном итоге используют физическую клавиатуру, которая близка к их локали, но затем переназначают клавиши для их конкретной раскладки.
Например, я печатаю на макете США-Дворжака. Клавиатуры Dvorak с жесткой проводкой встречаются редко и очень дороги, поэтому, когда я устанавливаю Windows, я просто переключаю ее на раскладку US-Dvorak, а затем переставляю свои клавишные панели или добавляю наклейки (или просто нажимаю на них).