276 SISTEMAS OPERACIONAIS MODERNOS
é o padrão. Como um exemplo, sistemas UNIX mais
antigos muitas vezes usavam o sinal @ para KILL, mas
o sistema de correio da internet usa endereços da forma
[email protected]. Quem se sentir mais confor-
tável com as convenções mais antigas pode redefinir
KILL como @, mas então precisará inserir um sinal @
literalmente para os endereços eletrônicos. Isso pode ser
feito digitando CTRL-V @. O CTRL-V em si pode ser
inserido literalmente digitando CTRL-V duas vezes em
sequência. Após ver um CTRL-V, o driver dá um sinal
dizendo que o próximo caractere é isento de processa-
mento especial. O caractere LNEXT em si não é inserido
na fila de caracteres.
Para permitir que os usuários parem uma imagem na
tela que está saindo de seu campo de visão, códigos de
controle são fornecidos para congelar a tela e reinicia-
lizá-la mais tarde. No UNIX esses são STOP (CTRL-
-S) e START (CTRL-Q), respectivamente. Eles não são
armazenados, mas são usados para ligar e desligar um
sinal na estrutura de dados do teclado. Sempre que ocor-
re uma tentativa de saída, o sinal é inspecionado. Se ele
está ligado, a saída não ocorre. Em geral, o eco também
é suprimido junto com a saída do programa.
Muitas vezes é necessário matar um programa des-
controlado que está sendo depurado. Os caracteres
INTR (DEL) e QUIT (CTRL-\
esse fim. No UNIX, DEL envia o sinal SIGINT para to-
dos os processos inicializados a partir daquele teclado.
Implementar o DEL pode ser bastante complicado, pois
o UNIX foi projetado desde o início para lidar com múl-
tiplos usuários ao mesmo tempo. Desse modo, no caso
geral, podem existir muitos processos sendo executados
em prol de muitos usuários, e a tecla DEL deve sinalizar
apenas os processos do próprio usuário. A parte difícil
é fazer chegar a informação do driver para a parte do
sistema que lida com sinais, a qual, afinal de contas, não
pediu por essa informação.
O CTRL- é similar ao DEL, exceto que ele envia o
sinal SIGQUIT, que força a gravação da imagem da me-
mória (core dump) se não for pego ou ignorado. Quando
qualquer uma dessas teclas é acionada, o driver deve
ecoar um CR e linha de alimentação e descartar todas
as entradas acumuladas para permitir um novo começo.
O valor padrão para INTR é muitas vezes CTRL-C em
vez de DEL, tendo em vista que muitos programas usam
DEL e a tecla de retrocesso de modo alternado para a
edição.
Outro caractere especial é EOF (CTRL-D), que no
UNIX faz que quaisquer solicitações de leitura penden-
tes para o terminal sejam satisfeitas com o que quer que
esteja disponível no buffer, mesmo que o buffer esteja
vazio. Digitar CTRL-D no início de uma linha faz que
o programa receba uma leitura de 0 byte, o que por con-
venção é interpretado como fim de arquivo e faz que
a maioria dos programas aja do mesmo jeito que eles
fariam se vissem o fim de arquivo em um arquivo de
entrada.
Software do mouse
A maioria dos PCs tem um mouse, ou às vezes um
trackball (que é apenas um mouse deitado de costas).
Um tipo comum de mouse tem uma bola de borracha
dentro que sai parcialmente através de um buraco na
parte de baixo e gira à medida que o mouse é movi-
do sobre uma superfície áspera. À medida que a bola
gira, ela desliza contra rolos de borracha colocados em
bastões ortogonais. O movimento na direção leste-oeste
faz girar o bastão paralelo ao eixo y; o movimento na
direção norte-sul faz girar o bastão paralelo ao eixo x.
Outro tipo popular é o mouse óptico, que é equipado
com um ou mais diodos emissores de luz e fotodetec-
tores na parte de baixo. Os primeiros tinham de operar
em um mouse pad especial com uma grade retangular
traçada nele de maneira que o mouse pudesse contar as
linhas cruzadas. Os mouses ópticos modernos contêm
um chip de processamento de imagens e tiram fotos de
baixa resolução contínuas da superfície debaixo deles,
procurando por mudanças de uma imagem para outra.
Sempre que um mouse se move uma determinada
distância mínima em qualquer direção ou que um bo-
tão é acionado ou liberado, uma mensagem é enviada
para o computador. A distância mínima é de mais ou
menos 0,1 mm (embora ela possa ser configurada no
software). Algumas pessoas chamam essa unidade de
mickey. Mouses podem ter um, dois, ou três botões,
dependendo da estimativa dos projetistas sobre a capa-
cidade intelectual dos usuários de controlar mais do que
um botão. Alguns mouses têm rodas que podem enviar
dados adicionais de volta para o computador. Os mou-
ses wireless são iguais aos conectados, exceto que em
vez de enviar seus dados de volta para o computador
através de um cabo, eles usam rádios de baixa potência,
por exemplo, usando o padrão Bluetooth.
A mensagem para o computador contém três itens:
Δx, Δy, botões. O primeiro item é a mudança na posi-
ção x desde a última mensagem. Então vem a mudan-
ça na posição y desde a última mensagem. Por fim, o
estado dos botões é incluído. O formato da mensagem
depende do sistema e do número de botões que o mouse
tem. Normalmente, são necessários 3 bytes. A maioria
dos mouses responde em um máximo de 40 vezes/s,