Quando você pressiona uma tecla do teclado, ele envia um código numérico para o computador, chamado código de verificação. O código de digitalização informa ao computador qual tecla foi pressionada; por exemplo, em um teclado americano típico, a Atecla envia o código de escaneamento 30 quando você o pressiona (e 158 quando você o solta). O driver do teclado relata esses códigos diretamente aos aplicativos quando o teclado está no modo bruto ("bruto" significa não processado, direto do teclado). Alguns programas usam o modo bruto e fazem seu próprio processamento de teclado; o servidor X é o mais proeminente.
A maioria dos programas espera que, quando você pressiona a Atecla, o programa lê o caractere a
(ASCII 97), e quando você pressiona Shift+ Ao programa lê A
(ASCII 65) e quando você pressiona Ctrl+ Ao programa lê o Ctrl+A
caractere (ASCII 1). Teclas que não possuem caracteres associados enviam seqüências de escape, por exemplo , \e[A
para Left, onde \e
está o caractere ESC (ASCII 27). O driver do teclado executa essa conversão quando o teclado está no modo ASCII, também chamado de modo XLATE (abreviação de "translate"). O modo XLATE permite que os aplicativos insiram caracteres, com o custo de não ter acesso a nuances como “tecla Shift esquerda pressionada” ou Ctrl + Shift + A, diferente de Ctrl + A.
A kbd_mode
permite alternar entre os modos, e mostra o modo atual, se você chamá-lo sem qualquer argumento.
As combinações mágicas de teclas SysRq destinam-se a recuperar de várias situações desagradáveis. Uma das combinações de teclas é Alt+SysRq+K
matar todos os programas no console virtual atual; se esse programa colocar o teclado no modo bruto, não será possível digitar no prompt de login (que geralmente aparecerá, dependendo da configuração do sistema). Pressionar Alt+SysRq+R
restaura o modo ASCII usual (fora de X), onde você pode digitar caracteres.