►Computadora Domestica, Multiseat?

COMPUTADORA DOMÉSTICA

Se denomina computadora doméstica u ordenador doméstico a la segunda generación de computadoras, que entraron en el mercado con el nacimiento del Altair 8800 y se extiende hasta principios de la década de 1990. Esto engloba a todas las computadoras de 8 bits (principalmente con CPU Zilog Z80, MOS Technology 6502 o Motorola 6800) y a la primera ola de equipos con CPU de 16 bits (principalmente Motorola 68000 e Intel 8086 y 8088). El término proviene de que llevaron la computadora de la industria al hogar. Aunque se suele excluir de ese grupo a los compatibles IBM PC, lo cierto es que hasta el triunfo definitivo y la adopción del término "computadora personal", tuvieron que competir con las líneas patrocinadas por Atari, Commodore y Apple Computer, por lo que algunos optan por incluir en la categoría de doméstico a los modelos más significativos de 16 bits, o al menos a los compatibles PC orientados al mismo mercado como la gama Tandy.

En cierta manera, guardando cierta similaridad con las nuevas formas animales aparecidas en el periodo cámbrico, una gran cantidad de máquinas de todas las clases, incluyendo rarezas como el ordenador Jupiter Ace en lenguaje Forth aparecían en el mercado y desaparecían de nuevo. Algunos tipos de computadoras permanecieron durante más tiempo, otros evolucionaron tratando de mantener la compatibilidad (existen, por ejemplo, tarjetas de emulación Apple II para los primeros Mac). Sin embargo, al final de la década la mayoría fueron eliminados por la computadora personal compatible con IBM y las generaciones más nuevas de videoconsolas porque ambas utilizaban sus propios formatos incompatibles. La revolución IBM fue provocada en 1981 por la salida de la computadora personal de IBM 5150, el IBM PC.

Pese a ello, siguen existiendo grupos de usuarios que no renuncian a usar y mejorar sus viejos equipos dotándoles de las posibilidades modernas como disco duro o conexión a Internet. Aunque todas son muy activas (teniendo en cuenta la cada vez menor base de usuarios), destacan por mérito propio la de usuarios de MSX en los 8 bits y la de Commodore Amiga en los 16 bits (calificados por un redactor de MacByte como las aldeas de irreductibles galos que resisten el asedio de las legiones Wintel). Asimismo han dado nacimiento a una serie de aficiones que se suelen englobar bajo el término RetroInformática.

Una de las más conocidas es la emulación, normalmente por software, pero también por hardware, de estas viejas computadoras y consolas en todo tipo de dispositivos: modernas computadoras personales, consolas, PDAs, teléfonos móviles, reproductores de DVD decodificadores de TDT, cámaras fotográficas digitales, etc.
Muchas de estas computadoras eran superficialmente similares y tenían usualmente un teclado de fabricación barata integrado en la carcasa que albergaba debajo la placa madre con la CPU, una fuente de alimentación externa y como unidad de visualización más común un televisor. Muchas utilizaban casetes de audio compactos como mecanismo (notoriamente poco fiable) de almacenamiento de datos ya que las unidades de disco flexible eran muy caras en aquella época. Su bajo precio era común a la mayoría de las computadoras.

Aparte de casos como CP/M y OS-9, la mayoría tienen en ROM las rutinas básicas (que podrían considerarse su sistema operativo) junto con el lenguaje BASIC. Es lo que hoy suele conocerse como el firmware de los periféricos (una unidad de disco o lectora de DVD puede llevar integrada en su circuitería microcontroladores precisamente basados en las CPUs de estos equipos).

MULTISEAT

Multiseat o multipuesto, también llamado multiterminal, multi-station, multihead, es la configuración especial de una computadora para poder soportar múltiples usuarios trabajando al mismo tiempo, cada uno con su propio monitor, teclado, ratón y, opcionalmente, con su propia tarjeta de sonido.

Introducción

Al usar la configuración estándar de un PC de escritorio (1 CPU + 1 pantalla + 1 teclado + 1 ratón), únicamente un usuario puede usar el PC completo a la vez, limitando la efectividad del sistema pues permanece desocupado la mayor parte del tiempo. Con la configuración multipuesto, varios usuarios pueden compartir los recursos de la misma CPU, usando de este modo un mayor porcentaje de su capacidad total y teniendo así un mejor aprovechamiento del sistema.

Esta funcionalidad se basa en gran medida en el creciente aumento de capacidad del hardware, tanto en procesadores como memorias, así como en la optimización del uso de los recursos por parte del sistema operativo, lo que permite aprovechar las capacidades multiusuario de sistemas GNU/Linux.

Por ejemplo, en el esquema tradicional, si alguien está usando únicamente un navegador de páginas web o escribiendo una carta en un procesador de textos, o trabajando con una hoja de cálculo, o con un programa de facturación, inventario, o contabilidad, el equipo se desaprovecha, al estar gran parte de la capacidad del sistema sin uso. Pero con la configuración multiterminal, otras personas podrán usar los recursos que de otra manera estarían ociosos.

Otra gran ventaja que posee la configuración multiterminal es el precio: no es necesario comprar diferentes placas base, microprocesadores, memorias RAM, discos duros, carcasas, reguladores de voltaje, y otros componentes por cada usuario. Únicamente se necesita comprar una CPU lo suficientemente potente y un lote pantalla-teclado-ratón por usuario, pues normalmente comprar un micro-ordenador rápido cuesta mucho menos que comprar varios más lentos.

Como inconveniente, si alguien o algún proceso está usando todo los recursos de la máquina (con juegos 3-D o computación intensiva), los otros usuarios no tendrán suficientes recursos para sus tareas y percibirán un sistema lento. Este problema puede eliminarse si los recursos de la CPU son los necesarios para el uso deseado y si el sistema operativo maneja dichos recursos de forma óptima.

Historia

En los años 1970, era muy corriente conectar múltiples terminales, e incluso terminales gráficos, a un solo computador central (mainframe), para así aprovechar las ventajas del tiempo compartido.

Sin embargo, la idea de usar la interface más contemporánea X11 para soportar múltiples usuarios apareció en 1999. Fue implementada por un brasileño llamado Miguel Freitas, usando el sistema operativo Gnu/Linux y el sistema gráfico X11 (en ese momento mantenido por XFree86).1 La manera en que lo hizo Freitas fue un parche en elservidor X para ejecutar muchas instancias de X al mismo tiempo, de tal manera que cada una capturara eventos de ratón y teclado específicos y el contenido gráfico. Este método recibió el nombre del multiseat o multiterminal.

Después de Freitas, otras soluciones aparecieron en 2003, como las de Svetoslav Slavtchev, Aivils Stoss y James Simmons que trabajaron en el acercamiento a evdev and faketty,2 3 modificando el núcleo Linux y permitiendo a más de un usuario usar independientemente la misma máquina. En ese tiempo, el Linux Console Project4 también propuso una idea para usar múltiples consolas independientes y luego múltiples teclados y ratones independientes en un proyecto llamado "Backstreet Ruby".5 Backstreet Ruby es un parche del kernel Linux. Fue portar hacia atrás al Linux-2.4 el árbol de kernel de Ruby. El objetivo de los desarrolladores de Linux Console fue mejorar y reorganizar la entrada, la consola, y los subsistemas del framebuffer en el kernel Linux, para que pudiesen trabajar independientemente uno del otro y permitir la operación multi-escritorio. La idea de Backstreet Ruby nunca fue terminada.

En 2005, el equipo de C3SL (Centro para la Computación Científica y el Software Libre), de la Universidad Federal de Paraná en Brasil, creó la solución basada con servidores X anidados, como Xnest y Xephyr. Con esta solución, cada servidor X anidado corre en cada pantalla de un servidor X anfitrión (por ejemplo Xorg) y una modificación en los servidores anidados les permite tener la exclusividad de cada conjunto de ratón y teclado. Estas soluciones eran las más usadas hoy en día debido a su estabilidad. En 2008, el grupo C3SL lanza el Multiseat Display Manager (MDM) para facilitar el proceso de la instalación y configuración de una caja multiseat. También en 2008, este grupo concibió un LiveCD para propósitos de pruebas.

Beneficios

Una configuración multiterminal tiene importantes ventajas, entre ellas:

·        Ahorro de espacio (solo se necesita un computador para varias personas).
·        Ahorro en costos en computadores y en consumo de energía (hasta un 80%).
·        Ahorro en licencias de software.
·        Mejor aprovechamiento de los recursos de computación.
·        Menor costos de mantenimiento.
·  Desventajas; mayor inversion en hardware, incomodidad en el ambiente de trabajo, riesgo que se malogre la PC y todo el equipo de trabajo se queda congelado.

Usos:

Un computador multipuesto puede usarse en lugares donde haya varias personas trabajando cerca una de la otra, como sucede en laboratorios de computación, cibercafés, cubículos en una oficina, departamentos de atención al cliente, etc. Algunos de estos lugares son:

  • Escuelas.
  • Universidades.
  • Oficinas.
  • Cibercafés.
  • Bibliotecas.
  • Hospitales.
  • Hogares.


Requerimientos

Es importante tener un ordenador con una buena placa base, una CPU potente y con buena cantidad de memoria (4 GB o más). Esto dependerá del número de puestos que se deseen conectar.

Para que varios usuarios puedan trabajar en un ordenador se necesitan conectar a éste varios monitores, teclados y ratones. Por ejemplo, para formar una multiterminal de cuatro estaciones (para 4 usuarios), se requieren 4 monitores, 4 teclados y 4 ratones.

Cada monitor necesita ser conectado a una salida de video. Algunas tarjetas de video tienen múltiples salidas y soportan varios monitores. Adicionalmente, se pueden instalar en el ordenador varias de estas tarjetas de video, pero la mayoría de las máquinas modernas solo tienen un slot PCIe o AGP, así que, en general, estas tarjetas deberán ser PCI.

La mayoría de los ordenadores tienen solo un conector PS/2 para el teclado y otro para el ratón, así que para conectar varios teclados y ratones se debe hacer mediante conectores USB y HUBs USB.

En resumen:
·    Ordenador con una placa base, un CPU potente, y con una buena cantidad de memoria RAM.
·        Disco duro.
·        Varias placas de video PCI/AGP/PCI-E.
·        Varios teclados PS/2 / USB.
·        Varios ratones PS/2 / USB.
·        Opcionalmente, varias tarjetas de sonido.
·        Sistema operativo multiterminal preferido.

Implementación:

Actualmente, hay varias formas de hacer multiterminales, y nuevas maneras están siendo constantemente desarrolladas. No existe la "mejor versión", pero algunas versiones son mejores que otras.

GNU/Linux


Userful Corporation desarrolló Userful MultiSeat Linux, una solución que habilita hasta 10 usuarios para compartir simultáneamente un sólo computador. Funciona con la mayoría de las tarjetas de video y los dispositivos USB Multi-Usuario disponibles en el mercado, soporta Edubuntu y otras distribuciones Linux, e incluye aplicaciones educativas de software libre.

En los sistemas operativos tipo Unix, como GNU/Linux, la interacción con el usuario se efectúa por el X Window System. Este sistema está basado en la arquitectura cliente-servidor, donde el cliente envía peticiones al servidor y recibe eventos de los dispositivos de entrada (teclados y ratones). Los servidores X tienen la definición de recurso, como puede ser un dispositivo de entrada o una ventana, que son dados a sus clientes. Estos recursos están asociados a una pantalla, la cual pertenece a un usuario. Por lo tanto, una multiterminal basada en GNU/Linux debe proveer una pantalla por cada usuario.

El servidor Xorg, la más reciente implementación del servidor X, no tiene soporte para múltiples pantallas. Este sigue el modelo del computador personal, el cual supone únicamente un usuario a la vez. Su entrada de datos está implementada sobre la entrada estándar del Kernel, llamadas terminales virtuales (VT). Éstas reciben tal nombre debido a que simulan los viejos métodos de entrada de los antiguos Mainframes. El VT esta totalmente implementado usando software, simulando un TTY, un dispositivo que estaba conectado a través de puertos seriales. El núcleo Linux soporta múltiples terminales, pero únicamente pueden recibir eventos de un teclado a la vez. Si más de un teclado está conectado al ordenador, los eventos serán enviados al VT activo. Eso quita la posibilidad de ejecutar 2 o más servidores X, debido a que únicamente pueden activar a un servidor a la vez, incluso si éstos usan distintas tarjetas de video. Para resolver estos problemas, se han creado varias soluciones diferentes, mencionadas aquí en orden cronológico:

·        Multiterminal con ruby (aplicando un parche al kernel).
·        Multiterminal con evdev (un protocolo).
·        Multiterminal con faketty (un módulo del kernel).
·        Multiterminal con Xnest.
·        Multiterminal con Xephyr (una mejora al anterior).

La más usadas son la faketty y Xephyr. La solución con Xephyr es independiente del hardware, mientras que la faketty únicamente trabaja con un conjunto más restringido de tarjetas de vídeo como las de NVIDIA y SiS.

También podemos optar por la opción de utilizar terminales ZeroClient con MAX Madrid Linux 6.0 Multiseat. Esta distribución derivada de Ubuntu y dedicada al mundo educativo, tiene incluida dos paquetes: max-multiseat y max-multiseat-storage, que darán la funcionalidad multiseat con ZeroClients compatibles con este sistema de forma sencilla y sin complicadas configuraciones.


No hay comentarios: