Interested Article - Клавиатура IBM PC

Клавиатура IBM PC клавиатура , предназначенная для IBM PC-совместимых компьютеров , работающая по IBM PC-совместимому протоколу обмена и имеющая характерный для IBM PC-совместимых компьютеров набор клавиш . Благодаря популярности IBM PC-совместимых компьютеров стала стандартом де-факто для компьютерных клавиатур, пока не была вытеснена стандартом USB HID . К клавиатурам IBM PC относят две принципиально разные по протоколу обмена клавиатуры: 83-клавишную клавиатуру оригинального IBM PC , известную как XT-клавиатура , и клавиатуру IBM PC/AT или PS/2 , которая в свою очередь изначально предлагалась в 84-клавишном варианте с цифровым блоком , но позже была заменена 101-клавишной клавиатурой . В дальнейшем добавлялись новые клавиши, менялся способ подключения, но основной набор клавиш и скан-кодов оставался неизменным. Также именно PC-раскладка стала использоваться в большинстве USB HID-клавиатур.

Предыстория

Когда разрабатывался компьютер IBM PC , было решено не разрабатывать для него новую клавиатуру, а доработать клавиатуру от моноблока IBM System/23 , известного также как IBM 5322 или Datamaster . Ко времени начала разработки IBM PC он должен был поступить в продажу, но выпуск откладывался из-за задержек в разработке интерпретатора Бейсика . В свою очередь раскладка клавиатуры взята от терминала , но конструкция была переработана для облегчения и удешевления.

Разновидности

Клавиатура оригинального IBM PC и PC/XT

Первая клавиатура IBM PC
Первая клавиатура IBM PC

Выпущенный в 1981 году IBM PC комплектовался 83-клавишной клавиатурой . Физическая раскладка клавиатуры осталась такой же, как и на System/23, однако назначение многих клавиш было изменено . В буквенно-цифровой области разместились все символы ASCII . Расположение знаков препинания было взято от пишущих машин компании IBM, в целом все знаки ASCII расставлены в том же порядке, как и на терминале VT100 фирмы DEC. 10 клавиш левого кластера определены как функциональные . Цифровой блок использовался также для управления курсором , для переключения режима его работы была введена клавиша Num Lock . Клавиша Ctrl располагалась в среднем ряду слева, как ранее в видеотерминалах , а Caps Lock — справа от клавиши пробел . Протокол обмена был односторонним, и режим ввода никак не отображался . Некоторые производители (например, ) выпускали клавиатуры, снабжённые индикаторами режима, однако они не могли адекватно отображать режим ввода, если он в процессе работы менялся программно . Схема клавиатуры тоже была изменена: в System/23 использовался параллельный интерфейс, а для PC был разработан последовательный интерфейс, благодаря чему клавиатура была отделена от системного блока и соединялась с ним витым кабелем через разъём 5-DIN . Опросом матрицы и связью с компьютером занимался микроконтроллер intel 8048 или аналогичный.

Клавиатура вышедшего в 1983 году IBM PC/XT была полностью аналогична, за исключением отсутствия отдельного провода для подачи сигнала сброса контроллера клавиатуры — теперь сброс осуществлялся передачей специальной последовательности на шину данных/синхронизации.

Клавиатура IBM PCjr

Оригинальная клавиатура IBM PCjr
Оригинальная клавиатура IBM PCjr

Для вышедшего в ноябре 1983 года домашнего компьютера IBM PCjr была разработана собственная клавиатура, более компактная и дешёвая, чем клавиатуры профессиональных серий IBM PC. На ней было только 62 клавиши, функции недостающих клавиш были достпны через сочетание с клавишей Fn . В этой клавиатуре была применена система подавления фантомных нажатий , а также возможность озвучивать нажатие клавиши через системный динамик . С системным блоком клавиатура связывалась по инфракрасному каналу , наподобие телевизионного пульта — для этого в клавиатуру устанавливались четыре батарейки AA , однако в комплекте имелся кабель для подключения к компьютеру напрямую. У клавиатуры отсутствовал буфер нажатых клавиш, из-за чего прерывание обработки нажатий пришлось сделать немаскируемым . Несмотря на меньшее количество клавиш и другой способ подключения, она генерировала те же самые скан-коды, что и обычная PC/XT-клавиатура .

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

84-клавишная AT-клавиатура

84-клавишная клавиатура PC/AT
84-клавишная клавиатура PC/AT

Для вышедшего в 1984 году IBM PC/AT была разработана новая версия клавиатуры, незначительно изменившаяся внешне , но с полностью переработанной схемой. Цифровой блок был выделен в отдельную группу. В клавиатуре использовался микроконтроллер (впоследствии — i8242). Протокол обмена стал двусторонним, чтобы отображать состояние режимов ввода (для чего на клавиатуре появились три светодиода), а также изменять некоторые настройки ввода; кроме того, контроллер клавиатуры на материнской плате взял на себя некоторые дополнительные функции, в том числе выход из защищённого режима процессора. Количество скан-кодов увеличилось, и при отпускании клавиши перед скан-кодом передавался префикс F0h. На клавиатуре появилась кнопка SysRq , которая, однако, так и не использовалась согласно изначальной задумке .

101/104-клавишная AT-клавиатура

Усовершенствованная клавиатура PC/AT
Усовершенствованная клавиатура PC/AT

В 1985 году была представлена «усовершенствованная клавиатура IBM», известная также как . С 1985 года этой клавиатурой комплектовался терминал IBM 3161, а с 1986 года — IBM PC . В новой раскладке были учтены многие пожелания клиентов, в частности — длинный левый ⇧ Shift (только для американской раскладки). Общая компоновка, в частности, курсорные клавиши в виде «перевёрнутой Т», была выбрана с оглядкой на клавиатуру терминалов VT220 фирмы DEC . Количество функциональных клавиш было увеличено до 12, они были перенесены в верхний ряд и разбиты на блоки по 4 клавиши. Новая клавиатура имела отдельный блок клавиш курсора и клавиши управления страничным выводом , но, несмотря на это, клавиша и светодиод Num Lock сохранились. Скан-коды новых клавиш соответствовали скан-кодам клавиш на цифровом блоке с аналогичным (при выключенном NumLock) назначением с добавлением префикса E0. Программы, опрашивавшие клавиатуру через BIOS, получали при нажатии клавиш курсорной группы коды, соответствующие клавишам цифрового блока с нажатым Shift, что позволяло полноценно использовать новые клавиши в старом ПО, однако это не касалось программ, опрашивавших клавиатуру напрямую . Клавиша Caps Lock была перенесена в средний ряд, как в механических печатных машинках, а клавиша Ctrl — в нижний и была продублирована, так же, как и клавиша Alt . SysRq как отдельная клавиша с клавиатуры была убрана, но её скан-код генерировался при нажатии сочетаний клавиш ⇧ Shift + Print Screen или Ctrl + Print Screen . Именно такая раскладка окончательно стала стандартом, поддерживаемым большинством производителей клавиатур .

Клавиатура PS/2

Штекер MiniDIN-6 и два гнезда — для клавиатуры и мыши соответственно

В 1987 году для компьютера IBM PS/2 стал использоваться разъём MiniDIN-6 , который в контексте использования для клавиатур и мышей также вскоре стали называть PS/2 . В дальнейшем этот разъём стал основным для PC-клавиатур, вытеснив 5-DIN . Протокол при этом не изменился, подключение PS/2-клавиатуры к компьютеру стандарта AT и наоборот доступно через пассивный переходник . По новой спецификации клавиатура должна была поддерживать, кроме стандартного, альтернативный набор скан-кодов set3 , однако этот набор так и не получил распространения: в частности, была попытка использовать этот набор в ранних версиях Windows NT, но из-за неполной поддержки этого набора производителями клавиатур от этой идеи пришлось отказаться . Контроллер клавиатуры на материнской плате обзавёлся дополнительными командами для поддержки новых возможностей протокола, а также поддержкой мыши . Позже разъём клавиатуры стали окрашивать в сиреневый цвет, чтобы отличить его от разъёма мыши (зелёный).

Появление клавиш Windows и Menu

В 1994 году компания Microsoft выпустила клавиатуру , на которой имелись три дополнительные кнопки: две клавиши Windows , служащие для вызова меню «Пуск» , и клавиша контекстного меню . В дальнейшем эти клавиши стали устанавливаться на большинство PC-совместимых клавиатур.

Региональные варианты

Основная 101(104)-клавишная раскладка получила неофициальное название ANSI . Кроме неё существовало ещё несколько региональных раскладок, различающихся в основном клавишами буквенно-цифровой группы:

  • 102/105-клавишная европейская модификация , известная также как ISO -раскладка, описанная в стандарте . В этой раскладке клавиша Enter расположена на двух горизонтальных рядах (D13/С13), но её нижняя часть укорочена, чтобы разместить клавишу хеша (которая, однако, имеет код обратного слеша ). Кроме того, в этой модификации имеется дополнительная клавиша обратного слеша рядом с левой клавишей Shift . Данная раскладка происходит от изначальной раскладки клавиатуры IBM PC, только в ней слева от клавиши Enter располагалась клавиша ~ `
  • Бразильская раскладка (или ABNT) — схожа с европейской, но имеется дополнительная клавиша рядом с правой клавишей ⇧ Shift , а также клавиша точки на цифровом блоке . Регламентирована стандартами NBR 10346 variant 2 (алфавитно-цифровой блок) и 10347 (цифровая клавиатура) .
  • Южнокорейская раскладка (KS) с двумя дополнительными возле клавиши пробел для ввода символов ханча и хангыль .
  • Японская раскладка (неофициально называемая JIS ) — содержит 106 (109) клавиш: укороченный Backspace, чтобы вместить символ иены , дополнительные клавиши слева от ↵ Enter и правой клавиши ⇧ Shift , а также три клавиши в ряду пробела: для переключения раскладки и ввода каны . Клавиатура для японской версии PC впервые появилась на компьютере (японском варианте PS/2 ). В дальнейшем именно эта раскладка была рекомендована для японского языка консорциумом .

Кроме того, существуют версии с увеличенной клавишей Enter , известной также как Bigass-Enter, берущая начало от 84-клавишной клавиатуры IBM PC/AT. В этих раскладках клавиша обратного слеша располагается в верхнем ряду, в связи с чем клавиша Backspace укорочена — по сути это раскладка KS без дополнительных клавиш в ряду пробела.

Компактные и расширенные клавиатуры

С целью экономии места на рабочем столе или чтобы уместить клавиатуру на устройстве, например ноутбуке, на котором полноразмерная клавиатура не может поместиться, производители клавиатур могут располагать клавиши на клавиатуре в нестандартном порядке или удалять клавиши с клавиатуры . Компактные программируемые клавиатуры популярны, например, среди геймеров и системных администраторов , так как такую клавиатуру легче носить с собой. В 1987 году сокращённую версию клавиатуры для PC представила сама компания IBM — это была клавиатура без цифрового блока (TKL), известная также как IBM Space Saving Keyboard. Эта клавиатура продавалась по той же цене, что и полноразмерная, и распространения ни сама SSK, ни такой формат в целом не получали вплоть до « механического ренессанса » 2010-х годов.

Наиболее популярные форматы компактных клавиатур :

  • 80 % или TKL (от англ. tenkeyless — буквально «без десяти клавиш») — клавиатура стандартной раскладки без цифрового блока . Цифровой блок также может эмулироваться в пределах основной буквенно-цифровой клавиатуры при включении режима NumLock ;
  • 75 % — распространённый на ноутбуках формат, при котором клавиши Home , End , PgUp и PgDown могут либо располагаться в один столбец по правому краю клавиатуры, либо эмулироваться через клавишу Fn совместно с курсорными клавишами. Малоиспользуемые клавиши ( Scroll Lock , Pause , Insert ), как правило, тоже эмулируются;
  • 60 % — формат, при котором клавиатуры состоят исключительно из буквенно-цифрового блока, клавиш-модификаторов, клавиш Esc , Enter и Backspace . Все остальные клавиши ( F1 - F12 , стрелки и другие) эмулируются с помощью клавиши Fn .

Кроме того, производители ноутбуков , если позволяет место, часто стремятся сохранить цифровой блок либо в сокращённом виде (клавиши + , - и ↵ Enter размещаются над цифровым блоком), либо с клавишами уменьшенного размера, сохраняя при этом блок курсорных клавиш. Существуют также и клавиатуры с расширенными функциями: кроме мультимедиа-клавиш, они могут оснащаться клавишами для эмуляции стандартных сочетаний клавиш, программируемыми макроклавишами, на которые можно назначить эмуляцию последовательностей нажатия либо даже целую программу с циклами и условными переходами, а также дополнительными элементами управления: , регулировки громкости, а также встроенными трекболами , тачпадами и экранами. В отличие от ADB , а также более позднего USB HID , подключение PC-клавиатуры и мыши в один разъём не предусмотрено, поэтому такие клавиатуры поставлялись с двумя раздельными разъёмами Mini-DIN для клавиатуры и мыши.

Клавиатуры с мультимедийными клавишами

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

  • Клавиши управления веб-браузером : назад, вперёд, обновить, стоп, поиск, избранное, домашняя страница;
  • Клавиши управления медиапроигрывателем : отключить звук, уменьшить громкость, увеличить громкость, следующий трек, предыдущий трек, остановка воспроизведения, воспроизвести/пауза;
  • Клавиши избранных программ: почтовый клиент, медиаплейер и две кнопки дополнительных приложений.

Принцип работы

В микрокомпьютерах конца 1970-х — начала 1980-х годов, в частности «троице 77-го» ( Apple II , Commodore PET , TRS-80 ) использовались два подхода: непосредственный опрос клавиатуры процессором (в Commodore PET и TRS-80) или клавиатура стандарта X4.14-1971, формирующая готовые ASCII -коды вводимых символов ( Apple II ). Первый был самым простым с точки зрения технической реализации, но создавал постоянную нагрузку на процессор и требовал соединения клавиатуры многожильным шлейфом, отчего такие клавиатуры чаще всего совмещали с системным блоком. Второй требовал отдельного контроллера клавиатуры и при этом жёстко привязывал клавиши к символам ASCII, не давал возможности получить состояние клавиш-модификаторов ( ⇧ Shift и Ctrl ) отдельно от прочих нажатых клавиш и ограничивал возможность использования сочетаний клавиш .

В IBM PC был выбран другой подход: опросом клавиатуры занимался контроллер, расположенный в её корпусе, но он передавал компьютеру не символ ASCII, а скан-код , причём различный при нажатии и отпускании клавиши. При длительном удержании клавиши код нажатия передаётся повторно через определённый промежуток времени . В компьютер скан-код передавался в виде последовательного кода, а на материнской плате устанавливался аналогичный контроллер, который при получении сигнала от клавиатуры генерировал прерывание INT 09h и передавал полученный скан-код в порт 60h . Впоследствии его функции перешли в Super I/O или LPC -чип, либо в южный мост чипсета . Для случаев, когда процессор не успевает обработать нажатия клавиш, предусмотрен буфер клавиатуры .

С точки зрения схемы контроллера все клавиши клавиатуры равнозначны, включая клавиши-модификаторы и клавиши-переключатели ; каждая имеет свой скан-код, причём дублирующиеся клавиши, например левый и правый ⇧ Shift — разный . Преобразованием скан-кодов в коды символов и управлением вводом с клавиатуры занималась уже BIOS , операционная система или даже прикладное ПО . Такой подход позволил в назначать на любую клавишу любое действие, которое требуется в программе, а также не привязываться к определённой локали .

В клавиатуре первых IBM PC и PC/XT протокол обмена был односторонним, режим ввода никак не отображался, а какие-либо схемы для отображения режима, встроенные в клавиатуру, не могли его адекватно отображать . В IBM PC/AT протокол обмена компьютера с клавиатурой значительно изменился: он стал двусторонним, позволяя вывести три индикатора режима (Caps Lock, Num Lock и Scroll Lock), а также устанавливать период автоповтора и изменять набор скан-кодов. Доступ к этим функциям на PC-совместимых компьютерах также осуществлялся через порт 60h, который теперь работал и на запись . Протоколы клавиатур PC/XT и PC/AT несовместимы, IBM PC/AT и последующие PC-совместимые компьютеры не распознавали клавиатуры от PC/XT. Некоторые производители выпускали клавиатуры на два стандарта, снабжённые переключателем .

Сравнение протоколов и разъёмов подключения

Тип Разъём Распайка Протокол Передача команд контроллеру Набор скан-кодов
PC (Type 1) 5-pin DIN
(DIN 41524) 5-pin DIN connector
1 CLK

2 DATA
3 -RESET
4 GND
5 +5V

2 стартовых бита,
8 бит данных,
бит нажатия/отпускания клавиши,
1 стоповый бит

Сброс контроллера — замыканием 3-го контакта на корпус

Нет Набор (PC/XT)
XT (Type 2) 1 CLK

2 DATA
3 N/C
4 GND
5 +5V

2 стартовых бита,
8 бит данных,
бит нажатия/отпускания клавиши,
1 стоповый бит

Сброс контроллера — специальной последовательностью на шины данных/синхронизации

PCjr ИК-порт, либо проприетарный разъём 1 ключ

2 N/A
3 DATA
4 GND (определение кабеля)
5 +5V
6 GND

2 стартовых бита,
8 бит данных,
бит нажатия/отпускания клавиши,
1 стоповый бит

Сброс контроллера — не предусмотрен

AT 5-pin DIN
(DIN 41524) 5-pin DIN connector
1 CLK

2 DATA
3 N/C
4 GND
5 +5V

1 стартовый бит,
8 бит данных,
1 бит чётности,
1 стоповый бит
сброс — посылкой команды контроллеру
Есть Набор (PC/AT)
PS/2 6-pin Mini-DIN
(DIN 45322)

6-pin DIN connector

1 DATA

2 N/C
3 GND
4 +5V
5 CLK
6 N/C

набор set2 или

Наборы скан-кодов

Набор скан-кодов set1 (в других источниках называемый как set#0) — это набор сканкодов оригинального PC. В клавиатуре PC/AT и более поздних моделях этот набор не поддерживается, однако контроллер клавиатуры на материнской плате может производить трансляцию скан-кодов в набор set1. Код отпускания соответствует коду нажатия+ 0x 80 . Коды клавиш, отсутствовавших в оригинальной клавиатуре, соответствуют кодам клавиш с соответствующими функциями, но к ним прибавляется префикс 0x E0 .

Набор set2 (или set#1)— стандартный набор PC/AT. В нём дополнительные клавиши также предваряются префиксом 0x E0 . Отпускание клавиши предваряется кодом 0x F0 .

Набор set3 (или set#2) представляет собой оптимизацию набора set2, заключавшуюся в отказе от префиксов и переходе к однобайтным скан-кодам. Однако он не получил распространения и к тому же может отсутствовать в некоторых моделях клавиатур . Отпускание также предваряется кодом 0x F0 .

Назначение и особенности работы отдельных клавиш



~
`
!
1
@
2
#
3
$
4
%
5
^
6
&
7
*
8
(
9
)
0
_
-
+
=
/
*
-
Q
W
E
R
T
Y
U
I
O
P
{
[
}
]
7
Home
8
9
PgUp


+
A
S
D
F
_
G
H
J
_
K
L
:
;
"
'
|
\
4
5
6
|
\
Z
X
C
V
B
N
M
<
,
>
.
?
/
1
End
2
3
PgDn
0
Ins
.
Del

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

  • Esc — используется в основном как клавиша отмены либо для очистки только что введённых данных, например, командной строки DOS . Как клавиша ввода специальных символов ко времени появления PC она уже не использовалось .
  • Ctrl — хотя эта клавиша была взята из раскладки терминалов для ввода управляющих символов , в таком качестве она используется исключительно в командной строке DOS и эмуляторах терминала . В большинстве приложений она используется в составе сочетаний клавиш .
  • Alt — взята из клавиатуры System/23 и тоже используется в основном в составе сочетаний клавиш . Также она позволяет вводить отсутствующие на клавиатуре символы — не только из алфавита ASCII — путём ввода при нажатой Alt кода символа на цифровой клавиатуре . В 102- (105)-клавишных клавиатурах правая клавиша Alt обозначается как Alt Gr и предназначена для ввода дополнительных символов: диакритики , знаков препинания и т. д. Кроме того, в различных меню и диалоговых окнах отдельные буквы названий пунктов могут быть выделены цветом или подчёркиванием, если фокус ввода находится в этом меню, сочетание клавиши Alt с выделенной буквой равнозначно выбору этого пункта меню . В Windows по умолчанию это выделение не отображается, но появляется при однократном нажатии Alt .
  • Tab используется для работы с табуляцией , а также для переключения между формами и элементами интерфейса. Простое нажатие Tab ↹ , как правило, приводит к переходу к следующей позиции табуляции или элементу интерфейса, а в сочетании с клавишей ⇧ Shift — к предыдущей . В Windows клавиша стала использоваться для переключения между открытыми окнами в сочетании с клавишей Alt .
  • Caps Lock , как правило, влияет только на регистр букв, но не на цифры и знаки препинания . В оригинальном PC и PC/XT выбранный регистр никак не отображался , начиная с PC/AT для этой цели имеется световой индикатор .
  • F1 … F10 (… F12) не имеют предопределённого значения, однако некоторые функции закреплены за какими-то из них в большом количестве программ, например F1 чаще всего вызывает встроенную справку .
  • Enter — совмещает в себе функцию перевода строки и подтверждения операции , хотя во многих продуктах IBM за эти функции отвечали разные клавиши.
  • Num Lock — была введена для того, чтобы совместить цифровой и навигационный блоки клавиатуры. За это решение компанию IBM многократно критиковали , пока не была выпущена клавиатура Model M, в которой появились выделенные навигационные клавиши , хотя клавиша Num Lock осталась для обеспечения совместимости. Кроме того, сочетанием клавиш Ctrl + Num Lock можно было приостановить работу текущей программы — позже эта функция была выведена на отдельную клавишу Pause .
  • Scroll Lock — включает режим прокрутки навигационными клавишами, для которого на клавиатуре начиная с PC/AT существует индикатор . Этот режим оказался не очень удобным и эта клавиша вскоре вышла из употребления и может отсутствовать на некоторых клавиатурах.
  • Pause — приостановка выполнения программы . Так же, как Scroll Lock , за пределами командной строки DOS не используется. В ранних версиях была сблокирована с клавишей Num Lock и вызывалось сочетанием с Ctrl .
  • Break — не является самостоятельной клавишей. В ранних версиях эта функция была сблокирована с клавишей Scroll Lock , а начиная с Model M — с клавишей Pause . Вызывается сочетанием с клавишей Ctrl и прерывает работу текущей программы . Используется практически исключительно в командной строке DOS, для чего приложение должно откликаться на специальное прерывание, но чаще приложения командной строки реагируют на управляющий символ «End of text» ( Ctrl + C ).
  • Print Screen — изначально посылала текущий экран на принтер , с появлением Windows стала копировать содержимое экрана в буфер обмена . Изначально была сблокирована с клавишей * и вызывалась сочетанием ⇧ Shift + * .
  • SysRq — появилась на 84-клавишной клавиатуре PC/AT , предполагалось, что она будет использоваться для переключения между программами в многозадачной ОС , но эта задумка так и не была реализована , позже она была убрана под клавишу Print Screen (вызывалась в сочетании с клавишей Shift).
  • Insert — для переключения между режимами вставки и замены. Чаще всего используется режим вставки, когда вводимый символ добавляется в позиции курсора, в то время как в режиме замены символ, стоящий после курсора, удаляется и заменяется на введённый с клавиатуры . Режим замены используется достаточно редко, в основном для заполнения различных форм, кроме того, само наличие этого режима, а особенно отсутствие индикации его критикуется многими специалистами по пользовательскому интерфейсу . Также данная клавиша в сочетании с клавишами Ctrl или ⇧ Shift может работать с буфером обмена.
  • Delete используется для удаления объекта после курсора , а также выделенных объектов. Кроме того, сочетание клавиш Ctrl + Alt + Del изначально использовалась для быстрой перезагрузки компьютера без очистки памяти — предполагалось, что оно будет использоваться только разработчиками ПО . Это сочетание зашито в BIOS, однако так как большинство операционных систем самостоятельно обрабатывает нажатия клавиш, значение этого сочетания может быть различным.

Сравнение с USB HID

Пассивные переходники для подключения универсальной клавиатуры или мыши (слева) и активный переходник для подключения PS/2 клавиатуры и мыши к разъёму USB (справа)

Начиная с конца 90-х существующий стандарт начал вытесняться стандартом USB HID . Стандарт USB более универсален, позволяет подключать к одной машине несколько клавиатур и мышей, а также подключать и отключать клавиатуру без отключения питания компьютера. В 2000 году компании Intel и Microsoft выпустили спецификацию , в которой объявили PS/2-клавиатуру и мышь устаревшими стандартами, предлагая производителям переходить на USB. Однако в течение последующих двух десятилетий эти стандарты продолжали использоваться наряду с USB по нескольким причинам:

  • В разъём USB можно подключить съёмный диск либо устройство беспроводной связи , что может быть недопустимо при работе с коммерческой или государственной тайной . Даже при отсутствии дополнительных разъёмов возможно подключение через разветвитель. В разъёмы PS/2 можно подключить только клавиатуру и мышь , все USB-разъёмы в этом случае можно отключить физически. Альтернативой может быть физическая фиксация штекера в гнезде USB, но при этом злоумышленник всё ещё имеет возможность разрезать кабель, подключившись в разрыв цепи.
  • Стандарт USB HID допускает до 8 одновременно нажатых клавиш на одном устройстве. Это ограничение можно преодолеть, зарегистрировав клавиатуру как несколько HID-устройств. Традиционная PC-клавиатура не имеет подобного ограничения, поэтому долгое время считалась более предпочтительной для некоторых компьютерных игр, таких как симуляторы .
  • Протокол USB более сложен как в технической реализации, требуя наличия на устройстве тактового генератора , так и в написании драйвера, в то время как обработка нажатий традиционной PC-клавиатуры может быть реализована с помощью нескольких ассемблерных команд. По последней причине долгое время USB-клавиатуры не поддерживались некоторыми программами BIOS setup . Также если клавиатура регистрирует в системе несколько HID-устройств, она может некорректно работать с некоторыми версиями BIOS.
  • Подключение клавиатуры и мыши через PS/2 позволяет освободить USB-разъёмы без использования USB-хабов.

Многие клавиатуры, выпускаемые после появления стандарта USB HID, хотя и не все, поддерживают оба протокола. Такую клавиатуру с разъёмом USB можно подключить к компьютеру, имеющему разъём PS/2 или AT, через пассивный переходник, (и наоборот, PS/2 клавиатуру — к USB). Для подключения клавиатур более старых моделей требуется активный переходник — существуют подобные переходники как промышленно изготавливаемые, так и любительские — например, Soarer’s converter на основе популярного контроллера atmega 32u4 , позволяющий не только подключать к USB любые PC-клавиатуры, в том числе PC/XT, но и произвольно менять назначение клавиш .

Критика

Первая 83-клавишная клавиатура получила высокую оценку в первом номере журнала PC Magazine , однако автор обзора удивлялся, «как такой признанный профессионал в изготовлении клавиатур, как IBM, мог разместить левую клавишу ⇧ Shift в столь неудобном месте» . Позже в том же журнале сообщалось, что от читателей было получено множество писем, где они изъявляли желание увидеть в новой модели индикацию режимов Caps Lock, Scroll Lock и NumLock. Критиковалась идея использовать одно и то же поле для курсорных клавиш и цифр, а также путаница, вызванная наличием клавиши Scroll Lock — не знакомые с данной клавиатурой пользователи могли предположить, что эта клавиша нужна для выключения режима Num Lock .

Джерри Пурнель в статье в журнале также критиковал размещение некоторых клавиш, заявляя, что их расположение « может вывести из себя, особенно учитывая, что та же корпорация IBM выпускала печатную машину Selectric с замечательной клавиатурой », и ругал прочих производителей PC-совместимых компьютеров за то, что они повторяют раскладку клавиш IBM, а не ощущение от нажатия, присущее только клавиатурам IBM . Также он писал, что эта раскладка «едва не свела с ума» , издателя фантастических книг, и для того, чтобы нормально ей пользоваться, ему пришлось попросить знакомого программиста написать специальную утилиту, которая переназначала клавиши более удобным образом . В то же время редакция самого журнала BYTE отнеслась к клавиатуре более благосклонно, посчитав эту клавиатуру «возможно, лучшей… среди всех микрокомпьютеров», а короткий левый ⇧ Shift — «мелочью по сравнению с ошибками, которые допускали другие производители компьютеров» .

Защищая выбранную раскладку, Дон Эстридж в 1983 году заявил, что «положение этих клавиш не так уж и плохо» и что «какое бы место ни было выбрано для этих клавиш, кому-то оно не понравится». «Если мы захотим их изменить, мы точно попадём впросак» .

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

С появлением PC/AT Чарльз Петцольд в одном из номеров PC Magazine заметил, что хотя в IBM и сгладили некоторые недочёты предыдущей модели, всё же новая клавиатура ещё не идеальна, отмечая уменьшившуюся в размерах и отнесённую слишком далеко клавишу ← Backspace а также неудачную компоновку курсорно-цифрового блока . Питер Нортон назвал перемещённую в цифровой блок клавишу Esc «бессмысленным решением» и «неприятностью» для тех, кому предстоит пользоваться клавиатурами обоих типов .

Когда вышла Model M, Чарльз Петцольд сетовал, что раскладка клавиатуры снова изменилась, но в то же время предполагал, что она останется надолго. « У меня такое смутное чувство, будто IBM говорит мне: „Тебе стоит полюбить её, потому что это клавиатура будущего“ » . Главным плюсом новой клавиатуры он назвал отдельные клавиши для стрелок.

Пользователи VIM , emacs и некоторых приложений для UNIX-подобных систем критикуют компанию IBM за размещение клавиш Ctrl , ⇪ Caps Lock и Esc на тех местах, на которых они разместили их в клавиатуре Model M, так как левому мизинцу при работе с сочетаниями клавиш приходится чаще покидать домашний ряд, отчего создаётся излишняя нагрузка на слабый палец .

Примечания

  1. ↑ .
  2. ↑ , с. 642.
  3. ↑ , с. 420.
  4. , с. 414.
  5. , p. 178.
  6. ↑ .
  7. ↑ .
  8. ↑ .
  9. ↑ , с. 140.
  10. ↑ .
  11. Юрий Литвиненко. (рус.) . Дата обращения: 18 июля 2020. 18 июля 2020 года.
  12. Una Persson. : [ 13 августа 2020 ] // The Straight Dope. — 2003. — 7 октября.
  13. Киви Берд . , "Домашний Компьютер" №12 (14 декабря 2003). 21 января 2014 года. Дата обращения: 17 января 2014.
  14. IBM. IBM Enhanced Keyboard for the Personal Computer Announcement Letter . 1986-04-18 (от 21 апреля 2021 на Wayback Machine ).
  15. Jim Burrows. (англ.) . Дата обращения: 10 августа 2020. 23 сентября 2015 года.
  16. Benj Edwards. (англ.) . How-To Geek (25 апреля 2020). Дата обращения: 31 августа 2023. 31 августа 2023 года.
  17. ↑ , p. 180.
  18. ↑ , p. 182.
  19. , 2.1.2.
  20. , 4−46.
  21. ↑ , с. 643.
  22. ↑ .
  23. ↑ .
  24. ↑ .
  25. , p. 15.
  26. .
  27. Fisher, Lawrence M. . , The New York Times (6 September 1994). 2 декабря 2021 года. Дата обращения: 10 декабря 2018.
  28. ↑ , 4−13.
  29. , 2.1.6.
  30. ABNT (1991): « от 27 декабря 2022 на Wayback Machine ». Available from the ABNT website. Accessed on 2021-08-15.
  31. , 2.1.5.
  32. , 2.1.7.
  33. : [ яп. ] . — PCオープン・アーキテクチャー推進協議会, 2000年.
  34. , 2.1.3.
  35. , 4−11.
  36. (англ.) . Switch & Click. Дата обращения: 19 марта 2022. 24 марта 2022 года.
  37. , 2.1.9.
  38. , 3.1.6.
  39. (англ.) . Microsoft. Дата обращения: 19 марта 2022. 10 сентября 2021 года.
  40. (англ.) . Дата обращения: 3 января 2022. 3 января 2022 года.
  41. А. Бойко. Удачный «Поиск» // Наука и жизнь . — 1991. — № 2. — С. 84. — ISSN .
  42. ↑ .
  43. (англ.) . www.os2museum.com . Дата обращения: 1 августа 2019. 1 августа 2019 года.
  44. Scott Mueller. Keyboard Controller Chips // . — 2003. — С. 387. — 1575 с. — ISBN 9780789729743 .
  45. , p. 177.
  46. , с. 133.
  47. , D−12 to D−13.
  48. , D−14 to D−15.
  49. ↑ , с. 648.
  50. , 3−16.
  51. , p. 2.13−2.14.
  52. , p. 2.14.
  53. ↑ , с. 83.
  54. Williams, Gregg . , BYTE (January 1982), С. 36. Дата обращения: 19 октября 2013.
  55. ↑ , 1−6.
  56. , с. 121.
  57. , с. 552.
  58. , 1−5.
  59. , с. 131.
  60. , 3−14.
  61. , с. 80.
  62. , 1−4.
  63. ↑ , 3−17.
  64. ↑ , 4−23.
  65. , 1−9.
  66. ↑ , с. 132.
  67. , 3−15.
  68. , с. 144.
  69. ↑ , 1−11.
  70. , с. 525−526.
  71. (англ.) . Mental Floss. Дата обращения: 11 января 2016. 10 сентября 2017 года.
  72. (англ.) . ExtremeTech . Дата обращения: 26 октября 2015. 12 апреля 2022 года.
  73. . Techquickie. (неопр.) . Дата обращения: 18 июля 2020. Архивировано 13 сентября 2020 года.
  74. (англ.) . Дата обращения: 20 июля 2020. 20 июля 2020 года.
  75. , PC Magazine (February–March 1982), С. 42. 7 сентября 2019 года. Дата обращения: 20 октября 2013.
  76. Pournelle, Jerry . , BYTE (November 1984), С. 372. Дата обращения: 23 октября 2013.
  77. Pournelle, Jerry. (англ.) // BYTE. — 1983. — Июнь. — P. 438−439 . — ISSN .
  78. Curran, Lawrence J., Shuford, Richard S. . , BYTE (November 1983), С. 88–97. Дата обращения: 19 марта 2016.
  79. (англ.) // PC Magazine. — 1984. — 13 November. — P. 119−122 .
  80. , с. 143.
  81. Xah Lee. (англ.) . Дата обращения: 4 января 2019. 9 ноября 2018 года.
  82. Xah Lee. (англ.) . Дата обращения: 8 ноября 2009. 26 мая 2010 года.

Литература

  • А.В. Фролов, Г.В. Фролов,. Аппаратное обеспечение персонального компьютера. — М. : Диалог-МИФИ, 1997. — Т. 33. — (Библиотека системного программиста). — ISBN 5-86404-103-3 .
  • Peter Norton . Chapter 6:Keyboard basics // . — Microsoft press, 1985. — ISBN 0-914845-46-2 .
  • Нортон П. Глава 10: Блок клавиатуры // Программно-аппаратная организация компьютера IBM PC = Inside the IBM PC. Access to advanced features and programming. — Prentice-Hall Publishing Comp., 1984.
  • Charles Petzold . The two faces of IBM's 8-MHz AT : [ англ. ] // PC Magazine . — 1986. — Т. 5, № 16 (30 September). — С. 179−184. — ISSN .
  • . : [ англ. ] // . — 1990. — September. — P. 414—420. — ISSN .
  • Edlin, Jim. // PC Magazine. — 1982. — Ноябрь. — P. 175.
  • Михаил Гук. Глава 11. Устройства ввода-вывода и их интерфейсы. 11.1. Клавиатура // Аппаратные средства IBM PC. — 3-е. — СПб. : Питер, 2006. — С. 642−652. — 1072 с. — 5000 экз. — ISBN 5-469-01182-8 .
  • Фигурнов В.Э. IBM PC для пользователя. — М. : Инфра-М, 1999. — ISBN 5-86225-471-4 .
  • Brice Carnahan, James O. Wilkes. (англ.) . — College of Engineering the University of Michigan, 1987.
  • Алан Купер . об интерфейсе. Основы проектирования = About Face. The Essentials of Interaction Design. — 3. — СПб. : Символ-Плюс, 2009. — 688 с. — 1500 экз. — ISBN 978 5 93286 132 5 .

Спецификации и руководства

  • IBM 5150: Guide to Operations (англ.) . — First Edition. — International Business Machines Corporation, 1981. — (IBM Personal Computer Hardware Reference Library).
  • IBM PCjr. Guide to Operations (англ.) . — International Business Machines Corporation, 1983. — P. 3—1 − 4-10.
  • (англ.) . — International Business Machines Corporation, 1983. — P. -101 − 2-106.
  • IBM XT 5160 Technical reference (англ.) . — International Business Machines Corporation, 1983.
  • IBM Personal Computer AT: Guide to Operations (англ.) . — International Business Machines Corporation, 1984. — (IBM Personal Computer Hardware Reference Library).
  • IBM Personal Computer AT 5170: Technical Reference (англ.) . — International Business Machines Corporation, 1985. — (IBM Personal Computer Hardware Reference Library).
  • IBM Personal System/2™ Model 25: Technical Reference (англ.) . — International Business Machines Corporation, 1987. — (IBM Personal Computer Hardware Reference Library).
  • Keyboard and Auxillary Device Controller // IBM Personal System/2 Hardware Interface Technical Reference. — International Business Machines Corporation, 1988. — (IBM Personal Computer Hardware Reference Library).
  • : [ англ. ] . — Revision 1.3a. — Microsoft Corporation, 2000. — (Windows Platform Design Notes).

Ссылки

  • (англ.) . W3C . Дата обращения: 18 июня 2020. 19 июня 2020 года.
  • // RSDN Magazine . — 2005. — № 1.
  • Дмитрий Савченков. (рус.) (22 апреля 2018). Дата обращения: 18 июля 2020. 22 сентября 2020 года.
  • Adam Chapweske. (англ.) (2001). Дата обращения: 19 марта 2022. 28 июля 2021 года.
  • John J. G. Savard. (англ.) (2003). Дата обращения: 18 июля 2020. 17 июля 2020 года.
  • Adi Robertson. (англ.) . The Verge (октябрь 2014). Дата обращения: 19 марта 2022. 6 августа 2015 года.

Same as Клавиатура IBM PC