Sistema operacionall
5.6
Interface com o usuário: Todo computador tem um teclado um monitor um mouse que permitem a interação com ele. Em computadores de grande porte normalmente eles tem monitor , teclado conectados. Esses dispositivos são chamados de terminais
Software de entrada: As informações normalmente vêm do mouse ou teclado. No caso dos PCs os teclados possuem um processador embutido que se comunicam com a placa mãe através de uma porta serial ou com uma porta serial o que é mais comum atualmente. A comunicação é feita através de uma interrupção que é gerada quando uma tecla é pressionada e outra quando ela é liberada.
Software teclado: O codigo que o teclado usa para se comunicar é o código de varredura e não o ASCII , pois os teclados possuem menos do que 128 teclas logo, só são necessário 7bits para representar o número das teclas e o oitavo bit recebe 1 quando a tecla é pressionada e 0 quando ela é liberada. Quando uma tecla é pressionada o código dela é associado com o da tabela ASCII, isso é feito pelo drive e o mesmo também é capaz de saber se a letra que esta sendo pressionada é maiúscula ou minúscula. O drive é capaz de saber se a letra é maiúscula ou minuscula pois ele é capaz de identificar se outra tecla também esta pressionada. Existem duas filosofias para o drive. A primeira consistem no drive receber as entradas e passar elas adiante inalterada. Essa filosofia é usada em editores de terminais sofisticados , um exemplo é o emacs. Como nem todos os programas estão interessados nesse nível de detalhe muitos já querem a entrada corrigida nesse caso entra a segunda filosofia. A segunda filosofia diz que o drive trata toda a edição interna da linha e somente entrega a linha corrigida. A primeira filosofia é baseada em caracteres(modo bruto ou natural) já a segunda em linhas (modo preparado), o padrão POSIX usa os nomes modo canônico para a segunda filosofia e modo não canônico para a primeira filosofia. Os