| Artículos | 01 ABR 2002

UGA (Universal Graphics Adapter)

Tags: Histórico
Eugenio Barahona.
El hardware gráfico compatible VGA data de finales de los años 80. La industria del hardware ya está preparando su sustituto: el estándar UGA.

Todos los ordenadores compatibles PC que se comercializan disponen de un adaptador gráfico que es compatible a nivel de registros y de BIOS con el estándar VGA que la compañía IBM definió a finales de la década de los 80. En la actualidad las diversas especificaciones que publica Microsoft acerca de las características que debe tener un PC para poder ejecutar sus sistemas operativos, obligan a la existencia de hardware compatible VGA. Gracias a esta compatibilidad, los sistemas Windows disponen de unas capacidades gráficas mínimas, a las que se accede de una manera uniforme independientemente del procesador gráfico en torno al que esté construida la tarjeta gráfica instalada en el sistema.
Sin embargo, el hardware VGA impone una serie de condiciones para su correcto funcionamiento, lo que complica el desarrollo de sistemas operativos y reduce en cierta medida el rendimiento que se puede obtener del subsistema gráfico, al funcionar en éste en el modo VGA nativo. Entre las limitaciones más importantes de la especificación VGA cabe destacar que el acceso a la memoria de la tarjeta gráfica se realiza a través de un segmento de 64 kB accesible desde el modo real de los microprocesadores compatibles x86, es decir, un segmento residente dentro del primer megabyte de memoria física del sistema, lo que impide poder acceder a todo el buffer de vídeo de una manera lineal sin necesidad de recurrir a técnicas de conmutación de bancos de memoria.
Además, los accesos al hardware VGA se realizan mediante instrucciones de entrada/salida a direcciones de puertos, en lugar de usarse la más eficiente entrada/salida mapeada en memoria que emplea todo el hardware moderno. Otra limitación viene dada por el hecho de que se requiere la presencia de una BIOS, con una longitud máxima de 64 kB, que ofrece servicios a las aplicaciones a través de una interfaz que usa la interrupción software 10h. Lamentablemente, dichos servicios sólo son accesibles desde modo real, lo que complica su uso desde los modernos sistemas operativos de 32 bits que trabajan en modo protegido. Además, la BIOS VGA sólo puede contener código para procesadores x86, lo que impide su uso en otras plataformas sin modificar primero su código ejecutable.
El objetivo de la especificación UGA es definir una interfaz firmware, implementada en una BIOS, que encapsule las particularidades de cada tipo de hardware gráfico pero ofrezca al mismo tiempo una serie de servicios que permitan implementar en el PC una funcionalidad gráfica mínima para el arranque del hardware y del sistema operativo. También se eliminarán las restricciones impuestas por el hardware VGA, de manera que el acceso a los registros se efectuará mediante entrada/salida mapeada en memoria. Como es lógico, la disposición de las direcciones a través de las que se accede a dicho registro será configurable mediante los mecanismos Plug & Play implementados en los sistemas operativos actuales. Para dicha tarea se utilizará el sistema de configuración del bus PCI, basado en el empleo de registros que contienen las direcciones base a través de las que se accede al resto de registros del hardware. Por otro lado, se eliminará la limitación de 64 kB de tamaño de la BIOS, además de implementarse las técnicas necesarias para obtener BIOS multiplataforma. El acceso al buffer de vídeo se realizará de manera lineal, no siendo necesario acceder a través de sistemas de segmentación. Por último, la especificación UGA también pretende simplificar el desarrollo de los correspondientes controladores de dispositivo, ofreciendo un soporte básico en el que puedan apoyarse los controladores específicos de cada hardware que desarrollen los diversos fabricantes de procesadores gráficos.

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información