Sistemas operativos modernos

deberían funcionar las terminales de red. Desde un punto de vista, la terminal debe tener una po­ tencia de cómputo elevada y una memoria muy grande para ejecutar protocolos complejos que comprimen los datos que se envían por la red. (Un protocolo es un conjunto de solicitudes y respuestas convenidas entre un transmisor y un receptor, con el fm de comunicarse a través de una red u otra interfaz.) Desde la otra perspectiva, la terminal debe ser simple en extremo, de modo que pueda exhibir píxeles, pero no piense mucho en que puede tener un costo muy bajo. En las dos secciones que siguen analizaremos un ejemplo de cada una de estas filosofías. Primero examinaremos el sofisticado sistema X Window. Luego veremos la terminal mínima SLIM. 5.8.1 El sistema X Window Lo definitivo en materia de terminales inteligentes es una que contiene una CPU tan potente co­ mo la de la computadora principal, junto con megabytes de memoria, un teclado y un ratón. Una terminal de este tipo es la terminal X, que ejecuta X Window System (el cual también se cono­ ce simplemente como X), desarrollado en el MIT como parte del proyecto Alhena. Una termi­ nal X es una computadora que ejecuta el software X y que interaclúa con programas que se ejecutan en una computadora remota. El programa dentro de la terminal X que obtiene entradas del teclado o el ratón y acepta comandos de una computadora remota se denomina servidor X. Este programa debe mante­ nerse al tanto de la ventana seleccionada actualmente (en la que está el puntero del ratón) para saber a cuál cliente debe enviar las entradas que lleguen del teclado. El servidor X se comunica a través de la red con clientes X que se ejecutan en algún host remoto. El servidor envía a los clientes entradas del teclado y el ratón, y acepta comandos de despliegue de ellos. Podría parecer extraño tener el servidor X dentro de la terminal y los clientes en el host re­ moto, pero la tarea del servidor X es exhibir bits, así que tiene sentido estar cerca del usuario. Desde el punto de vista del programa, se trata de un cliente que le dice al servidor que haga cosas, como exhibir texto y figuras geométricas. El servidor (en la terminal) simplemente obe­ dece, al igual que todos los servidores. En la figura 5-45 se muestra la disposición del cliente y el servidor. También es posible ejecutar X Window System en UNIX o en otro sistema operativo. De he­ cho, muchos sistemas UNIX ejecutan X como su sistema de ventanas estándar, incluso en má­ quinas autónomas o para acceder a computadoras remotas por Internet. Lo que X Window System define en realidad es el protocolo entre el cliente X y el servidor X, como se muestra en la figura 5-45. No importa si el cliente y el servidor están en la misma máquina, están separados 100 metros dentro de una red local o están a miles de kilómetros de distancia, conectados por In­ ternet. El protocolo y el funcionamiento del sistema es idéntico en todos los casos. X no es más que un sistema de ventanas; no es una GUI completa. Para tener una GUI completa, sobre él se ejecutan otras capas de software. Una capa es Xlib, que es un conjunto de procedimientos de bibfioteca para acceder a la funcionalidad X. Estos procedimientos cons­ tituyen la base de X Window System y son lo que examinaremos a continuación, pero son de­ masiado primitivos para que la mayoría de los programas de usuario acceda a ellos en forma

RkJQdWJsaXNoZXIy MjI4NDcx