Sistemas operativos modernos

Las terminales RS-232 pueden subdividirse en tres categorías. Las más sencillas son las terminales de copia permanente (es decir, de impresión). Los caracteres introducidos con el te­ clado se transmiten a la computadora. Los caracteres enviados por la computadora se imprimen en el papel. Estas terminales son obsoletas y ya casi no se encuentran, salvo haciendo las ve­ ces de impresoras de bajo costo. Las terminales de CRT tontas funcionan del mismo modo, sólo que con una pantalla en vez de papel. Éstas también se conocen como “tty de vidrio” porque funcionalmente son igua­ les a las tty de copia permanente. (El término tty es una abreviatura de Teletype®, una compa­ ñía ya desaparecida que fue pionera en el negocio de las terminales de computadora; “tty” ha venido a indicar cualquier terminal.) Las tty de vidrio también son obsoletas. Las terminales de CRT inteligentes son en realidad computadoras miniatura especializa­ das. Tienen una CPU y memoria y contienen software, por lo regular en ROM. Desde el pun­ to de vista del sistema operativo, la principal diferencia entre una tty de vidrio y una terminal inteligente es que esta última entiende ciertas secuencias de escape. Por ejemplo, si se envía el carácter ASCII ESC (OxlB) seguido de varios caracteres más, puede desplazarse el cursor a cualquier posición en la pantalla, insertar texto en medio de la pantalla y cosas por el estilo. Las terminales inteligentes son las que se usan en los sistemas mainframe y las que emulan otros sistemas operativos. Es su software el que trataremos a continuación. 5.6,2 Software de entrada El teclado y la pantalla son dispositivos casi independientes, por lo que aquí los trataremos por separado. Sin embargo, no son independientes por completo, porque los caracteres tecleados casi siempre se exhiben en la pantalla. La tarea básica del controlador de teclado consiste en obtener entradas del teclado y pasar­ las a los programas de usuario cuando éstos lean de la terminal. Pueden adoptarse dos posibles filosofías para el controlador. En la primera, la tarea de éste es simplemente aceptar entradas y pasarlas a un nivel superior sin modificación. Un programa que lee de la terminal obfiene una sucesión en bruto de códigos ASCII. (Proporcionar a los programas de usuario los números de tecla es demasiado primitivo, además de que depende mucho de la máquina.) Esta filosofía es muy compatible con las necesidades de los editores de pantalla avanzados como emacs, que permiten al usuario vincular una acción arbitraria a cualquier carácter o suce­ sión de caracteres. Sin embargo, implica que si el usuario teclea dste en lugar de date y luego co­ rrige el error pulsando tres veces la tecla de retroceso y escribiendo ate, seguido de un retomo de carro, el programa de usuario recibirá de la siguiente manera los 11 códigos ASCII tecleados: d s t e < - < - < - a t e C R No todos los programas quieren tantos pormenores. Lo más común es que sólo les interese la entrada corregida, no la sucesión exacta que la produjo. Esta observación nos lleva a la segunda fi­ losofía: el controlador se encarga de toda la edición dentro de cada línea, y simplemente entrega líneas corregidas a los programas de usuario. La primera filosofía está orientada a caracteres; la se

RkJQdWJsaXNoZXIy MjI4NDcx