fbpx
Wikipedia

Sistema de ventanas X

El Sistema de Ventanas X (en inglés, X Window System) es un sistema de ventanas, común en sistemas operativos del tipo UNIX, que fue desarrollado a mediados de los años 1980 en el MIT para dotar de una interfaz gráfica a los sistemas Unix. Este protocolo permite la interacción gráfica en red entre un usuario y una o más computadoras haciendo transparente la red para este. Generalmente se refiere a la versión 11 de este protocolo, X11, el que está en uso actualmente. X es el encargado de mostrar la información gráfica de forma totalmente independiente del sistema operativo.

Servidor de pantalla: X-server o Wayland compositor
X Window System en GNOME 2.20.
Logotipo de X Window System
Logotipo de X.Org

X fue diseñado primariamente para implementar clientes ligeros, donde mucha gente usaba simultáneamente la capacidad de procesamiento de un mismo computador trabajando en tiempo compartido. Cada persona usaba un terminal en red que tenía capacidades limitadas para dibujar la pantalla y aceptar la entrada del usuario. Debido a la ubicuidad del soporte para el software X en Unix, es usado en los computadores personales incluso cuando no hay necesidad del tiempo compartido.

El sistema de ventanas X distribuye el procesamiento de aplicaciones especificando enlaces cliente-servidor. El servidor provee servicios para acceder a la pantalla, teclado y ratón, mientras que los clientes son las aplicaciones que utilizan estos recursos para interacción con el usuario. De este modo mientras el servidor se ejecuta de manera local, las aplicaciones pueden ejecutarse remotamente desde otras máquinas, proporcionando así el concepto de transparencia de red.

Debido a este esquema cliente-servidor, se puede decir que X se comporta como un terminal gráfico virtual.

El hecho que exista un estándar definido para X permite que se desarrollen servidores X para distintos sistemas operativos y plataformas, lo que hace que el código sea muy portable. Por ejemplo, permite tener clientes X ejecutándose en un potente servidor UNIX mientras los resultados son visualizados en un PC de escritorio con cualquier otro sistema operativo funcionando.

La comunicación entre el cliente X y el servidor se realiza por medio de un protocolo conocido como Xprotocol, que consiste en una serie de bytes interpretados como comandos básicos para generar ventanas, posicionarlas, o controlar eventos. Los clientes X acceden al Xprotocol mediante el uso de una biblioteca llamada Xlib, que evita al programador de clientes X tener que lidiar con el código binario del Xprotocol. Sin embargo, los aspectos de decoración de ventana y manejos de ventanas no están definidos en esta biblioteca.

X no es un gestor de ventanas, necesita de uno para controlar el manejo de ventanas. Esto trae la ventaja de que permite al usuario instalar uno o más administradores de ventanas de su preferencia. También trae la ventaja de que hace de X estrictamente un sistema gráfico, de tal modo que un cliente X podría estar enviando un gráfico a una pantalla, a una impresora o a cualquier otro hardware sin darse cuenta, flexibilizando la salida gráfica.

Por otro lado, la desventaja que trae el hecho de no tener un único entorno gráfico es que los programadores de clientes X que desean hacer uso de los recursos de los entornos gráficos (botones, barras de deslizamientos, etc) deben elegir un entorno gráfico específico para programar y contar que el usuario tenga por los menos las bibliotecas de dicho entorno gráfico instalado. Las bibliotecas de los entornos gráficos se conocen como "Toolkits", el estándar X provee sólo de un conjunto de herramientas básicas llamadas Xintrisics que permiten a los programadores de los entornos gráficos armar sus Toolkits sobre estas.

Diseño

 

X usa el modelo cliente-servidor: un servidor X se comunica con varios programas cliente. El servidor acepta los pedidos para la salida gráfica (ventanas) y devuelve la entrada del usuario (desde el teclado, del ratón, o de la pantalla táctil). El servidor puede funcionar así:

  • Una aplicación exhibiendo hacia una ventana de otro sistema de visualización.
  • Un programa del sistema controlando la salida vídeo de una PC.
  • Una pieza de hardware dedicada.

Esta terminología de cliente servidor - el terminal de usuario siendo el servidor y las aplicaciones siendo los clientes - a menudo confunde a nuevos usuarios de X, porque los términos parecen invertidos. Pero X toma la perspectiva de la aplicación, en vez de la del usuario final: X proporciona la exhibición por pantalla y los servicios de entrada/salida a las aplicaciones, así que es un servidor; las aplicaciones usan estos servicios, por lo tanto son los clientes.

El protocolo de comunicaciones entre el servidor y el cliente opera transparente a la red: el cliente y el servidor pueden ejecutarse en la misma o en diferentes máquinas, posiblemente con diferentes arquitecturas y sistemas operativos. Un cliente y un servidor pueden incluso comunicarse con seguridad sobre Internet haciendo una conexión de túnel sobre una sesión cifrada de la red.

Un cliente X puede emular un servidor X proporcionando servicios de exhibición a otros clientes. Esto es conocido como "X nesting" (anidado X). Los clientes de código abierto tales como Xnest y Xephyr soportan el X nesting.

Para utilizar un programa de cliente X sobre una máquina remota, el usuario hace lo siguiente:

  • En la máquina local, se abre una ventana de terminal.
  • Usar telnet o ssh para conectarse con la máquina remota.
  • Solicitar el servicio local de pantalla/entrada (ej., export DISPLAY=[user's machine]:0 si no se está usando SSH con X tunneling activado).

El cliente X remoto entonces hará una conexión al servidor X local del usuario, proporcionando la exhibición por pantalla y la entrada.

Alternativamente, la máquina local puede ejecutar un pequeño programa que se conecte con la máquina remota y comience la aplicación cliente.

Ejemplos prácticos de clientes remotos incluyen:

  • Administrando una máquina remota gráficamente.
  • Corriendo una simulación de cómputo intensivo en una máquina Unix remota y mostrando los resultados por pantalla en una de escritorio Windows.
  • Ejecutar software gráfico en varias máquinas al mismo tiempo, controlados por una sola pantalla, teclado y ratón.

Principios

En 1984, Bob Scheifler y Jim Gettys establecieron los tempranos principios de X:

  • No añadan nueva funcionalidad a menos que un implementador no pueda completar una aplicación real sin ella.
  • Es tan importante decidir qué no es el sistema, como decidir qué es. No respondan a las necesidades de todo el mundo; en lugar de eso, hagan el sistema extensible para que las necesidades adicionales puedan cubrirse en una manera compatible ascendente.
  • La única cosa peor que generalizar a partir de un ejemplo es generalizar a partir de ningún ejemplo en absoluto.
  • Si un problema no se entiende totalmente, probablemente es mejor no proporcionar ninguna solución en absoluto.
  • Si ustedes pueden conseguir el 90 por ciento del efecto deseado para el 10 por ciento del trabajo, utilicen la solución más simple. (Ver también peor es mejor).
  • Aíslen la complejidad tanto cuanto sea posible.
  • Proporcionen un mecanismo en vez de una política. En particular, pongan la interfaz de política en las manos de los clientes.

El primer principio fue modificado durante el diseño del X11: "No añadan nueva funcionalidad a menos que ustedes sepan de alguna aplicación real que la requiera".

X ha mantenido en gran parte estos principios. La implementación de ejemplo es desarrollada con una vista hacia la extensión y la mejora de la implementación, mientras que permanece compatible con el protocolo original de 1987.

Interfaces de usuario

 
Interfaz gráfica de usuario de GNOME.
 
Entorno de escritorio KDE 4.
 
Interfaz gráfica de usuario de Xfce.

X es primariamente una definición de primitivas de protocolo y gráficas, y deliberadamente no contiene especificaciones de diseño de interfaz de usuario, como estilos de botón, menú, barra de título para las ventanas. En vez de eso, un software de aplicación (tal como los gestores de ventana, Widget toolkits de GUI y ambientes de escritorio, o las interfaces gráficas de usuario específicas de una aplicación) definen y proporcionan tales detalles. Como resultado, no hay interfaz X típica y varios ambientes de escritorio han sido populares entre los usuarios.

Un manejador de ventana controla la colocación y la apariencia de las ventanas de aplicación. Esto puede resultar en interfaces semejantes a las de Microsoft Windows o Macintosh (los ejemplos incluyen Metacity en GNOME, KWin en KDE, Xfwm en Xfce, o Compiz) o tener controles radicalmente diferentes (tales como tiling window manager, como wmii o Ratpoison). Los manejadores de ventana abarcan en sofisticación y complejidad desde los más simples (ej., twm, el manejador de ventana básico suministrado con X, o evilwm, un manejador de ventana extremadamente liviano) hasta los ambientes de escritorio más completos tales como Enlightenment.

Muchos usuarios usan X con un ambiente de escritorio, que, independientemente del manejador de ventana, incluyen varias aplicaciones usando una interfaz de usuario consistente. GNOME, KDE y Xfce son los ambientes de escritorio más populares. El ambiente estándar de Unix es Common Desktop Environment (CDE). La iniciativa freedesktop.org se dirige a la interoperabilidad entre el escritorio y los componentes necesarios para un escritorio X competitivo.

Puesto que el X es responsable de la interacción entre el teclado y el ratón con el escritorio gráfico, ciertos atajos de teclado han llegado a estar asociados con X. Control-Alt-Backspace típicamente termina la sesión actualmente corriendo en X, mientras que el Control-Alt conjuntamente con una tecla de función cambia a la consola virtual asociada. Sin embargo, esto es un detalle dejado al diseño de una implementación de servidor X y no es universal; por ejemplo, las implementaciones de servidor X para Windows y Macintosh típicamente no proporcionan estos atajos de teclado.

Implementaciones

La implementación de X.Org es la implementación canónica de X. Debido al tipo de licencia libre, han aparecido un número de variaciones, tanto libres como propietarias. Los vendedores comerciales de UNIX han tendido a tomar la implementación de fuente abierta y a adaptarla para su hardware, usualmente personalizándola y añadiendo extensiones propietarias.

Hasta 2004, XFree86 proporcionó la variante más común de X en sistemas como UNIX libres. XFree86 comenzó un port de X para las PC compatibles 386, y, para final de los años 1990, se había convertido en la más grande fuente de innovación técnica en X y el estándar de facto del desarrollo de X.[1]​ Desde 2004, sin embargo, el X.Org Server, una bifurcación (fork) de XFree86, ha llegado a ser predominante.

Mientras es común asociar X con Unix, los servidores X también existen nativamente dentro de otros ambientes gráficos. El sistema operativo OpenVMS de Hewlett-Packard incluye, como su ambiente de escritorio estándar, una versión de X con el CDE conocida como DECwindows. El Mac OS X v10.3 (Panther) y el Mac OS X v10.4 (Tiger) de Apple incluyen X11.app, basado en XFree86 4,3 y X11R6.6, con una mejor integración de Mac OS X, en el Mac OS X v10.5 (Leopard) X.org Apple incluyó el X.org (X11R7.2 Codebase) en vez del XFree86 (X11R6.8). Los servidores de terceros bajo el Mac OS 7, 8 y 9 incluyeron el eXodus de White Pine Software y el MacX de Apple.

Microsoft Windows no es comercializado con soporte para X, pero existen muchas implementaciones de terceros, tanto de software libre tales como Cygwin/X, Xming y WeirdX; como de productos propietarios tales como Xmanager, Exceed, MKS X/Server, Reflection X, y X-Win32.

Cuando un sistema operativo con un sistema de ventana nativo es anfitrión de X, adicionalmente, el sistema X puede usar o no usar su propio escritorio en una ventana anfitriona separada o puede ejecutarse rootless, significando que el escritorio X está oculto y el ambiente anfitrión de ventana maneja la geometría y apariencia de las ventanas hospedadas en la pantalla del anfitrión.

Terminales X

 
Un dispositivo de computación de red, Network Computing Devices (NCD), el terminal X NCD-88k

Un terminal X es un cliente ligero que solamente ejecuta un servidor X. Esta arquitectura llegó a ser popular para construir paquetes de terminales baratos para que muchos usuarios usaran simultáneamente el mismo gran servidor de computadora para ejecutar programas de aplicación como clientes de cada terminal X. Este uso está muy cerca con la intención original del proyecto MIT.

Los terminales X exploran la red (el dominio de difusión local) usando el protocolo de control del X Display Manager para generar una lista de anfitriones disponibles que son permitidos como clientes. Uno de los anfitriones de clientes debe ejecutar un X display manager.

El hardware dedicado para terminales X ha llegado a ser menos común; un PC o un moderno cliente ligero con un servidor X proporciona típicamente la misma funcionalidad a igual o más bajo costo.

Historia

Predecesores

Varios sistemas de pantalla de bitmap precedieron a X. De Xerox vinieron los computadores Alto (1973) y Star (1981). De Apple vinieron el Lisa (1983) y el Macintosh (1984). El mundo de Unix tenía el Andrew Project (1982) y el terminal Blit de Rob Pike (1982).

La Universidad Carnegie Mellon produjo una aplicación de acceso remoto llamado Alto Terminal, la cual, desplegaba ventanas que se solapaban en el Xerox Alto, e hizo anfitriones remotos, típicamente sistemas DEC VAX corriendo Unix, responsables de manejar eventos de la exposición de ventanas y refrescando el contenido de las ventanas cuanto era necesario.

X deriva su nombre como sucesor de un sistema de ventana anterior a 1983 llamado W (precediendo la letra X en el alfabeto inglés). El W Window System corrió bajo el sistema operativo V. W usó un protocolo de red soportando terminales y ventanas de gráficos, el servidor mantenía la lista de pantallas.

Origen y desarrollo temprano

La idea original de X emergió en el MIT en 1984 como colaboración entre Jim Gettys (del Proyecto Athena) y Bob Scheifler (del MIT Computer Science and Artificial Intelligence Laboratory). Scheifler necesitaba un ambiente de exhibición de pantalla usable para depurar el Argus system. El Proyecto Athena, un proyecto común entre Digital Equipment Corporation (DEC), el MIT e IBM para proporcionar fácil acceso a los recursos de computación para todos los estudiantes, necesitó un sistema de gráficos de plataforma independiente para enlazar juntos los sistemas heterogéneos provenientes de múltiples vendedores; el sistema de ventana, entonces bajo desarrollo en el Andrew Project de la universidad del Carnegie Mellon no hizo las licencias disponibles, y no existían alternativas.

El proyecto solucionó esto creando un protocolo que podía ejecutarse tanto en aplicaciones locales como llamar a recursos remotos. A mediados de 1983 un port inicial de W a Unix corrió a un quinto de su velocidad bajo V; en mayo de 1984, Scheifler reemplazó el protocolo sincrónico de W por un protocolo asincrónico y las listas de pantalla con los gráficos de modo inmediato para así hacer la versión 1 de X. X se convirtió en el primer ambiente de sistema de ventanas en ofrecer verdadera independencia de hardware e independencia del vendedor.

Scheifler, Gettys y Ron Newman trabajaron juntos y X progresó rápidamente. Ellos lanzaron la Versión 6 en enero de 1985. La DEC, entonces se preparaba para lanzar la estación de trabajo Ultrix, juzgó a X como el único ambiente de sistema de ventanas que probablemente estaría disponible a tiempo. Los ingenieros de la DEC portaron el X6 a la pantalla QVSS de DEC en el MicroVAX.

En el segundo trimestre de 1985, X adquirió soporte de color para funcionar en la DEC VAXstation-II/GPX, formando lo que se convirtió en la versión 9.

Un grupo en la Universidad Brown portó la versión 9 al IBM RT/PC, pero los problemas de lectura de datos no alineados en el RT forzaron un cambio incompatible del protocolo, llevando a la versión 10 a finales de 1985. Por 1986, organizaciones externas habían comenzado a pedir el X. El lanzamiento del X10R2 ocurrió en enero de 1986; el del X10R3 en febrero de 1986. Aunque el MIT hubiera licenciado gratuitamente el X6 a algunos grupos externos, en ese momento decidió licenciar el X10R3 y las versiones futuras bajo de que fue conocido desde entonces como la licencia MIT, intentando popularizar a X más lejos y a cambio, esperando que muchas más aplicaciones estuvieran disponibles. El X10R3 se convirtió en la primera versión en alcanzar un despliegue amplio, con tanto la DEC como Hewlett-Packard lanzando productos basados en él. Otros grupos portaron el X10 hacia Apollo Computer y estaciones de trabajo Sun e incluso al IBM AT. Las demostraciones de la primera aplicación comercial para X tomaron lugar en la feria de negocios Autofact de ese tiempo. Era un sistema de diseño asistido por computador de ingeniería mecánica de Cognition Inc. que corría en VAXes y exhibía la imagen en PC corriendo un servidor X. La última versión del X10, la X10R4, apareció en diciembre de 1986

Fueron hechos intentos para habilitar a los servidores X como dispositivos de colaboración en tiempo real, muy similar a como el Virtual Network Computing (VNC) posteriormente permitiría que un escritorio fuera compartido. Uno de esos esfuerzos tempranos fue la herramienta SharedX de Philip J. Gust.

Aunque X10 ofreciera una funcionalidad interesante y potente, había llegado a ser obvio que el protocolo X podría tener un diseño más neutral al hardware antes de que fuera demasiado extensamente adoptado; pero el MIT por sí solo no tendría los recursos disponibles para un rediseño tan completo. Mientras que sucedía esto, el Western Software Laboratory (WSL) de DEC se encontró a sí mismo entre proyectos con un equipo experimentado. Smokey Wallace del WSL y Jim Gettys propusieron que el DEC WSL construyera el X11 y lo hiciera libremente disponible bajo los mismos términos que el X9 y el X10. Este proceso comenzó en mayo de 1986, con el protocolo concluido en agosto. la prueba alfa del software comenzó en febrero de 1987, la prueba beta en mayo; el lanzamiento del X11 finalmente ocurrió el 15 de septiembre de 1987.

El diseño del protocolo X11, encabezado por Scheifler, fue discutido extensivamente en listas de correo abiertas en el naciente Internet donde se extendió un puente a los groupos de noticia de USENET. Gettys se mudó desde el Systems Research Center de DEC a California para ayudar a dirigir el trabajo de desarrollo del X11 en el WSL, donde Phil Karlton y Susan Angebrandt encabezaban el diseño y la implementación del servidor de ejemplo del X11. Por lo tanto, X representa uno de los primeros, muy grandes proyectos distribuidos, de software libre.

El MIT X Consortium y el X Consortium, Inc.

 
X Window System, un ejemplo histórico de la interfaz gráfica de usuario y aplicaciones comunes la distribución del MIT X Consortium corriendo bajo el manejador de ventana twm: X Terminal, Xbiff, xload y un navegador gráfico de páginas de manuales, Man page.

En 1987, con el éxito del X11 siendo evidente, el MIT deseaba abandonar la administración del X, pero en una reunión de junio de 1987 con nueve vendedores, los vendedores le dijeron a MIT que ellos creían en la necesidad de un entidad neutral para evitar que X se fragmentara en el mercado. En enero de 1988, el MIT X Consortium se formó como un grupo no lucrativo de vendedores, con Scheifler como director, para dirigir el desarrollo futuro de X en una atmósfera neutral inclusiva de intereses comerciales y educativos. Jim Fulton se unió en enero de 1988 y Keith Packard en marzo de 1988 como desarrolladores mayores, con Jim enfocándose en Xlib, fuentes, manejadores de ventanas, y utilidades; y Keith reimplementó el servidor. Donna Converse, Chris D. Peterson, y Stephen Gildea se unieron más adelante ese año, enfocándose en juegos de herramientas (toolkits) y conjuntos de widgets, trabajando de cerca con Ralph Swick, del proyecto Athena del MIT. El MIT X Consortium produjo varias revisiones significativas del X11, las primeras (el Release 2 - X11R2) en febrero de 1988. Ralph Mor y Jay Hersh se unieron más adelante al equipo. En 1993, como el MIT X Consortium se preparó para salir del MIT, el equipo fue unido por R. Gary Cutbill, Kaleb Keithley, y David Wiggins.[2]

En 1993, el X Consortium, Inc. (una sociedad no lucrativa) se formó como el sucesor del MIT X Consortium. Lanzó el X11R6 el 16 de mayo de 1994. En 1995 tomó el desarrollo del Motif toolkit y el Common Desktop Environment de los sistemas Unix. El X Consortium se disolvió a finales de 1996, produciendo una revisión final, el X11R6.3, y una herencia de creciente influencia comercial en el desarrollo.[3][4]

The Open Group

En enero de 1997 el X Consortium pasó la administración de X a The Open Group, un grupo de vendedores formado a principios de 1996 por la fusión de la Open Software Foundation con X/Open.

El The Open Group lanzó el X11R6.4 a principios de 1998. Controversialmente, el X11R6.4 se apartó de los términos de licenciamiento liberales tradicionales, a medida que The Open Group intentaba asegurar el fiananciamiento para el desarrollo de X.[5]​ Los nuevos términos habrían prevenido su adopción por muchos proyectos (tales como el XFree86) e incluso por algunos vendedores comerciales. Después de que XFree86 parecía estar evaluando una bifurcación (fork), The Open Group relicenció el X11R6.4 bajo la licencia tradicional en septiembre de 1998.[6]​ El último lanzamiento de The Open Group vino como el X11R6.4 patch 3.

X.Org y XFree86

El XFree86 se originó en 1992 desde el servidor X386 para los sistemas IBM PC compatibles incluidos con el X11R5 en 1991, escrito por Thomas Roell y Mark W. Snitily y donados al MIT X Consortium por Snitily Graphics Consulting Services (SGCS). XFree86 evolucionó en el tiempo, desde apenas un port de X, hasta la implementación líder y más popular y se convirtió en el administrador de facto del desarrollo de X.[1]

En mayo de 1999, The Open Group formó X.Org. X.Org supervisó el lanzamiento de las versiones X11R6.5.1 en adelante. En ese momento, el desarrollo X llegó a estar moribundo;[7]​ la mayor parte de la innovación técnica desde que el X Consortion se había disuelto tomaba lugar en el proyecto XFree86.[8]​ En 1999, el equipo de XFree86 se unió a X.Org como un miembro honorario (sin pago),[9]​ alentado por varias compañías interesadas en usar XFree86 con Linux y en su estatus como la más popular versión de X.

Por 2003, surgió con la popularidad de Linux (y por lo tanto la base instalada de X), X.Org permaneció inactivo,[10]​ y el desarrollo activo tomó lugar en el XFree86. Sin embargo, había un considerable desarrollo disidente dentro del XFree86. El proyecto XFree86 sufrió de una percepción como un modelo de desarrollo demasiado similar al de una catedral; los desarrolladores no podían tener un acceso commit CVS[11][12]​ y los vendedores tenían que mantener un conjunto extensivo de parches.[13]​ En marzo de 2003 la organización CFree86 expulsó a Keith Packard, quien se había unido a XFree86 después del final del MIT X Consortium original, con considerable malestar.[14][15][16]

X.Org y XFree86 comenzaron a discutir una reorganización orientada a nutrir apropiadamente el desarrollo de X.[17][18][19]​ Jim Gettys había estado empujando fuertemente por un modelo de desarrollo abierto desde por lo menos desde el año 2000.[20]​ Gettys, Packard y varios otros comenzaron a discutir en detalle los requerimientos para el gobierno efectivo de X con un desarrollo abierto.

Finalmente en un eco de la disputa de licenciamiento del X11R6.4, XFree86 lanzó la versión 4.4 en febrero de 2004 bajo una licencia más restrictiva que hizo que muchos proyectos que confiaban en X la encontraran inaceptable.[21]​ La cláusula añadida a la licencia estaba basada sobre la cláusula original publicada por la licencia BSD, que fue vista por la Free Software Foundation y Debian como incompatible con la GNU General Public License.[22]​ Otros grupos vieron restricciones posteriores como estando en contra del espíritu original de X (OpenBSD amenazando con un fork, por ejemplo). El asunto de la licencia, combinado con las dificultades de tener los cambios, dejó a muchos sintiendo que el momento estaba maduro para un fork.[23]

X.Org Foundation

A principios de 2004, varias personas de X.Org y freedesktop.org formaron la X.Org Foundation, y el Open Group les dio el control del nombre de dominio X.org. Esto marcó un cambio radical en el gobierno de X. Puesto que los administradores de X desde 1988 (incluyendo la X.Org previa) habían sido organizaciones de vendedores. Ahora, la fundación estaba encabezada por desarrolladores de software y usaba una comunidad de desarrollo basada en el modelo bazar, que confiaba en el involucramiento de afuera. Los miembros estaban abiertos a los individuos, con los miembros corporativos estando en la forma de patrocinadores. Algunas grandes corporaciones como Hewlett-Packard y Sun Microsystems actualmente soportan a la X.Org Foundation.

La fundación toma un rol inadvertido sobre el desarrollo de X: las decisiones técnicas son hechas por sus méritos al alcanzar un vasto consenso entre los miembros de la comunidad. Las decisiones técnicas no son hechas por la junta directiva; en este sentido, es fuertemente modelado por el no intervencionismo técnico de la Fundación GNOME. La fundación no emplea a ningún desarrollador.

La fundación lanzó el X11R6.7, el X.Org Server, en abril de 2004, basado en el XFree86 4.4RC2 con los cambios del X11R6.6 combinados. Gettys y Packard habían tomado la última versión del XFree86 bajo la licencia vieja, haciendo un punto de un modelo de desarrollo abierto y reteniendo la compatibilidad GPL, trajeron a bordo muchos de los viejos desarrolladores.[22]

El X11R6.8 vino en septiembre de 2004. Añadió un número significativo de características, incluyendo el soporte preliminar para ventanas translúcidas y otros efectos visuales sofisticados, lentes de aumento para la pantalla, vistas en miniatura (thumbnailers), y facilidades para integrar sistemas de pantalla inmersiva en 3D tales como el Proyecto Looking Glass de Sun y el Croquet Project. Aplicaciones externas llamadas manejadores composición de ventanas proprocionan políticas para la apariencia visual.

El 21 de diciembre de 2005,[24]​ X.Org lanzó el X11R6.9, la fuente libre monolítica para usuarios heredados, y el X11R7.0, el mismo código fuente separado en módulos independientes, cada uno mantenido en proyectos separados.[25]​ La fundación lanzó el X11R7.1 el 22 de mayo de 2006, cerca de cuatro meses después del 7.0, con mejoras considerables de características.[26]

Historial de versiones

Versión Fecha de lanzamiento Cambios importantes
X1 Junio de 1984 Primer uso del nombre "X"; varios cambios fundamentales con respecto a "W"
X6 Enero de 1985 Primera versión licenciada a algunas compañías ajenas.
X9 Septiembre de 1985 Color. Primera versión bajo la Licencia MIT.
X10 Fines de 1985 IBM RT/PC, AT (corriendo DOS) y otros
X10R2 Enero de 1986
X10R3 Febrero de 1986 Primer release fuera de MIT. Se hizo a uwm el manejador de ventanas estándar.
X10R4 Diciembre de 1986 Última versión de X10.
X11 Septiembre 15, 1987 Primera versión del actual protocolo.
X11R2 Febrero de 1988 Primer lanzamiento del "X Consortium"[27]
X11R3 Octubre 25, 1988 XDM
X11R4 Diciembre 22, 1989 XDMCP, twm vino como el manejador de ventanas estándar, se mejoraron aplicaciones, se agregó la 'Shape extension' y nuevas fuentes.
X11R5 Septiembre 5, 1991 PEX, Xcms (color management), servidor de fuentes, X386
X11R6 Mayo 16, 1994 ICCCM v2.0; Inter-Client Exchange; X Session Management; X Synchronization extension; X Image extension; XTEST extension; X Input; X Big Requests; XC-MISC; cambios en XFree86.
X11R6.1 Marzo 14, 1996 Extensión X Double Buffer; extensión X keyboard; extensión X Record.
X11R6.2
X11R6.3 (Broadway)
Diciembre 23, 1996 Funcionalidad Web, LBX. Última entrega del X Consortium. X11R6.2 es el nombre de una parte de X11R6.3 que tiene solo como nuevas características sobre R6.1 a XPrint y la implementación de Xlib de la escritura vertical y el soporte de caracteres definido por el usuario.[28]
X11R6.4 Marzo 31, 1998 Xinerama.[29]
X11R6.5 Versión interna de X.Org; no disponible públicamente.
X11R6.5.1 Agosto 20, 2000
X11R6.6 Abril 4, 2001 Corrección de errores.
X11R6.7.0 Abril 6, 2004 Primera versión de X.Org Foundation, basándose principalmente en XFree86 4.4rc2. Distribución para el usuario final. Eliminación de XIE, PEX y libxml2.[30]
X11R6.8.0 Septiembre 8, 2004 Transparencia en ventanas, XDamage, Distributed Multihead X, XFixes, Composite, XEvIE.
X11R6.8.1 Septiembre 17, 2004 Arreglos de seguridad libxpm.
X11R6.8.2 Febrero 10, 2005 Corrección de errores, actualización de controladores.
X11R6.9
X11R7.0
Diciembre 21, 2005 EXA, Mayor cantidad de cambios al código fuente. Surge la versión modular (7.0) y monolítica (6.9).[31]
X11R7.1 Mayo 22, 2006 Mejoras en EXA, Kdrive integrado, AIGLX, Mejoras en las diversas plataformas y sistemas operativos.[32]
X11R7.2 15 de febrero de 2007 Eliminación de LBX y del controlador de teclado incluido, X-ACE, XCB, mejoras en la autoconfiguración.[33]
X11R7.3 6 de septiembre de 2007 Xserver 1.4.2, nput hotplug, output hotplug (RandR 1.2), KDrive, DTrace, EXA, soporte para UnixWare.[34]
X11R7.4 23 de septiembre de 2008 Xserver 1.5.1, Pci-rework, EXA speed-ups, _X_EXPORT, GLX 1.4, mayor rapidez de arranque del servidor.[35]
X11R7.5 26 de octubre de 2009[36] Xserver 1.7, Xi 2, XGE, soporte para E-EDID, RandR 1.3 (GPU object), MPX, predictable pointer acceleration, DRI2 memory manager, módulo de seguridad SELinux, eliminación de bibliotecas y extensiones obsoletas.[37]
X11R7.6 20 de diciembre de 2010 Xi 3 y XKB 2, soporte para UnixWare,[38]​ requerimiento de XCB,[39]​ X Server 1.9
X11R7.7 6 de junio de 2012 Cambios en el servidor Xorg 1.10; extensión RandR 1.4; extensión Sync 1.3.

Versiones futuras

Versión

Fecha de lanzamiento Cambios importantes
X11R7.8 2013 Xi 3; XKB 2.

Véase también

Referencias

  1. Announcement: Modification to the base XFree86(TM) license. el 7 de septiembre de 2005 en Wayback Machine. 02 Feb 2004
  2. Robert W. Scheifler and James Gettys: X Window System: Core and extension protocols: X version 11, releases 6 and 6.1, Digital Press 1996, ISBN 1-55558-148-X
  3. Financing Volunteer Free Software Projects 10 Jun 2005
  4. Lessons Learned about Open Source 2000
  5. 02 Apr 1998
  6. February 04, 2002
  7. The Evolution of the X Server Architecture 1999
  8. A Call For Open Governance Of X Development el 12 de febrero de 2005 en Wayback Machine. 23 Mar 2003
  9. Another teleconference partial edited transcript el 12 de febrero de 2005 en Wayback Machine. 13 Apr 2003
  10. Keith Packard issue el 12 de febrero de 2005 en Wayback Machine. 20 Mar 2003
  11. Cygwin/XFree86 - No longer associated with XFree86.org 27 Oct 2003
  12. On XFree86 development 9 Jan 2003
  13. Invitation for public discussion about the future of X el 12 de febrero de 2005 en Wayback Machine. 20 Mar 2003
  14. A Call For Open Governance Of X Development el 12 de febrero de 2005 en Wayback Machine. 21 Mar 2003
  15. Notes from a teleconference held 2003-3-27 el 12 de febrero de 2005 en Wayback Machine. 03 Apr 2003
  16. A Call For Open Governance Of X Development el 22 de diciembre de 2004 en Wayback Machine. 24 Mar 2003
  17. A Call For Open Governance Of X Development el 6 de enero de 2005 en Wayback Machine. 23 Mar 2003
  18. Discussing issues el 27 de diciembre de 2004 en Wayback Machine. 14 Apr 2003
  19. Lessons Learned about Open Source 2000
  20. XFree86 4.4: List of Rejecting Distributors Grows Feb 18, 2004
  21. Appendix A: The Cautionary Tale of XFree86 June 5, 2002
  22. X Marks the Spot: Looking back at X11 Developments of Past Year Feb 25, 2004
  23. X11R6.9 and X11R7.0 Officially Released December 21 2005
  24. Modularization Proposal 2005-03-31
  25. Proposed Changes for X11R7.1 2006-04-21
  26. The X Window System: History and Architecture 1 September 1999
  27. XFree86 and X11R6.3 December 1999
  28. The Open Group Announces Internet-Ready X Window System X11R6.4 March 31, 1998
  29. X.Org Foundation releases X Window System X11R6.7 April 7, 2004
  30. Changes Since R6.8 2005-10-21
  31. Release Notes for X11R7.1 22 May 2006
  32. The X.Org Foundation released 7.2.0 (aka X11R7.2) February 15th, 2007
  33. X server version 1.4 release plans. Retrieved 2007-08-25.
  34. «Foundation Releases X7.4». X.org. Consultado el 10 de noviembre de 2009. 
  35. X.Org Foundation - Releases X7.4
  36. X.Org Wiki - Planes 7.5
  37. «Wiki - 7.6 release plans». X.org. Consultado el 10 de noviembre de 2009. 
  38. «Thinking towards 7.6 katamari, including xcb». Lists.x.org. Consultado el 10 de noviembre de 2009. 

Enlaces externos

  • X.Org Foundation Sitio web oficial (en inglés)
  • Curso del sistema de ventanas X (en español)
  • Nomachine (en inglés)
  • (en inglés)
  • freedesktop.org (en inglés)
  •   Datos: Q178481
  •   Multimedia: X Window System

sistema, ventanas, sistema, ventanas, inglés, window, system, sistema, ventanas, común, sistemas, operativos, tipo, unix, desarrollado, mediados, años, 1980, para, dotar, interfaz, gráfica, sistemas, unix, este, protocolo, permite, interacción, gráfica, entre,. El Sistema de Ventanas X en ingles X Window System es un sistema de ventanas comun en sistemas operativos del tipo UNIX que fue desarrollado a mediados de los anos 1980 en el MIT para dotar de una interfaz grafica a los sistemas Unix Este protocolo permite la interaccion grafica en red entre un usuario y una o mas computadoras haciendo transparente la red para este Generalmente se refiere a la version 11 de este protocolo X11 el que esta en uso actualmente X es el encargado de mostrar la informacion grafica de forma totalmente independiente del sistema operativo Servidor de pantalla X server o Wayland compositor X Window System en GNOME 2 20 Logotipo de X Window System Logotipo de X Org El texto que sigue es una traduccion defectuosa Si quieres colaborar con Wikipedia busca el articulo original y mejora esta traduccion Copia y pega el siguiente codigo en la pagina de discusion del autor de este articulo subst Aviso mal traducido Sistema de ventanas X Este articulo o seccion se encuentra desactualizado La informacion suministrada ha quedado obsoleta o es insuficiente Este aviso fue puesto el 15 de enero de 2021 X fue disenado primariamente para implementar clientes ligeros donde mucha gente usaba simultaneamente la capacidad de procesamiento de un mismo computador trabajando en tiempo compartido Cada persona usaba un terminal en red que tenia capacidades limitadas para dibujar la pantalla y aceptar la entrada del usuario Debido a la ubicuidad del soporte para el software X en Unix es usado en los computadores personales incluso cuando no hay necesidad del tiempo compartido El sistema de ventanas X distribuye el procesamiento de aplicaciones especificando enlaces cliente servidor El servidor provee servicios para acceder a la pantalla teclado y raton mientras que los clientes son las aplicaciones que utilizan estos recursos para interaccion con el usuario De este modo mientras el servidor se ejecuta de manera local las aplicaciones pueden ejecutarse remotamente desde otras maquinas proporcionando asi el concepto de transparencia de red Debido a este esquema cliente servidor se puede decir que X se comporta como un terminal grafico virtual El hecho que exista un estandar definido para X permite que se desarrollen servidores X para distintos sistemas operativos y plataformas lo que hace que el codigo sea muy portable Por ejemplo permite tener clientes X ejecutandose en un potente servidor UNIX mientras los resultados son visualizados en un PC de escritorio con cualquier otro sistema operativo funcionando La comunicacion entre el cliente X y el servidor se realiza por medio de un protocolo conocido como Xprotocol que consiste en una serie de bytes interpretados como comandos basicos para generar ventanas posicionarlas o controlar eventos Los clientes X acceden al Xprotocol mediante el uso de una biblioteca llamada Xlib que evita al programador de clientes X tener que lidiar con el codigo binario del Xprotocol Sin embargo los aspectos de decoracion de ventana y manejos de ventanas no estan definidos en esta biblioteca X no es un gestor de ventanas necesita de uno para controlar el manejo de ventanas Esto trae la ventaja de que permite al usuario instalar uno o mas administradores de ventanas de su preferencia Tambien trae la ventaja de que hace de X estrictamente un sistema grafico de tal modo que un cliente X podria estar enviando un grafico a una pantalla a una impresora o a cualquier otro hardware sin darse cuenta flexibilizando la salida grafica Por otro lado la desventaja que trae el hecho de no tener un unico entorno grafico es que los programadores de clientes X que desean hacer uso de los recursos de los entornos graficos botones barras de deslizamientos etc deben elegir un entorno grafico especifico para programar y contar que el usuario tenga por los menos las bibliotecas de dicho entorno grafico instalado Las bibliotecas de los entornos graficos se conocen como Toolkits el estandar X provee solo de un conjunto de herramientas basicas llamadas Xintrisics que permiten a los programadores de los entornos graficos armar sus Toolkits sobre estas Indice 1 Diseno 2 Principios 3 Interfaces de usuario 4 Implementaciones 4 1 Terminales X 5 Historia 5 1 Predecesores 5 2 Origen y desarrollo temprano 5 3 El MIT X Consortium y el X Consortium Inc 5 4 The Open Group 5 5 X Org y XFree86 5 6 X Org Foundation 6 Historial de versiones 6 1 Versiones futuras 7 Version 8 Vease tambien 9 Referencias 10 Enlaces externosDiseno Editar Articulos principales Protocolos y arquitectura de X Window Systemy Protocolo base de X Window System X usa el modelo cliente servidor un servidor X se comunica con varios programas cliente El servidor acepta los pedidos para la salida grafica ventanas y devuelve la entrada del usuario desde el teclado del raton o de la pantalla tactil El servidor puede funcionar asi Una aplicacion exhibiendo hacia una ventana de otro sistema de visualizacion Un programa del sistema controlando la salida video de una PC Una pieza de hardware dedicada Esta terminologia de cliente servidor el terminal de usuario siendo el servidor y las aplicaciones siendo los clientes a menudo confunde a nuevos usuarios de X porque los terminos parecen invertidos Pero X toma la perspectiva de la aplicacion en vez de la del usuario final X proporciona la exhibicion por pantalla y los servicios de entrada salida a las aplicaciones asi que es un servidor las aplicaciones usan estos servicios por lo tanto son los clientes El protocolo de comunicaciones entre el servidor y el cliente opera transparente a la red el cliente y el servidor pueden ejecutarse en la misma o en diferentes maquinas posiblemente con diferentes arquitecturas y sistemas operativos Un cliente y un servidor pueden incluso comunicarse con seguridad sobre Internet haciendo una conexion de tunel sobre una sesion cifrada de la red Un cliente X puede emular un servidor X proporcionando servicios de exhibicion a otros clientes Esto es conocido como X nesting anidado X Los clientes de codigo abierto tales como Xnest y Xephyr soportan el X nesting Para utilizar un programa de cliente X sobre una maquina remota el usuario hace lo siguiente En la maquina local se abre una ventana de terminal Usar telnet o ssh para conectarse con la maquina remota Solicitar el servicio local de pantalla entrada ej export DISPLAY user s machine 0 si no se esta usando SSH con X tunneling activado El cliente X remoto entonces hara una conexion al servidor X local del usuario proporcionando la exhibicion por pantalla y la entrada Alternativamente la maquina local puede ejecutar un pequeno programa que se conecte con la maquina remota y comience la aplicacion cliente Ejemplos practicos de clientes remotos incluyen Administrando una maquina remota graficamente Corriendo una simulacion de computo intensivo en una maquina Unix remota y mostrando los resultados por pantalla en una de escritorio Windows Ejecutar software grafico en varias maquinas al mismo tiempo controlados por una sola pantalla teclado y raton Principios EditarEn 1984 Bob Scheifler y Jim Gettys establecieron los tempranos principios de X No anadan nueva funcionalidad a menos que un implementador no pueda completar una aplicacion real sin ella Es tan importante decidir que no es el sistema como decidir que es No respondan a las necesidades de todo el mundo en lugar de eso hagan el sistema extensible para que las necesidades adicionales puedan cubrirse en una manera compatible ascendente La unica cosa peor que generalizar a partir de un ejemplo es generalizar a partir de ningun ejemplo en absoluto Si un problema no se entiende totalmente probablemente es mejor no proporcionar ninguna solucion en absoluto Si ustedes pueden conseguir el 90 por ciento del efecto deseado para el 10 por ciento del trabajo utilicen la solucion mas simple Ver tambien peor es mejor Aislen la complejidad tanto cuanto sea posible Proporcionen un mecanismo en vez de una politica En particular pongan la interfaz de politica en las manos de los clientes El primer principio fue modificado durante el diseno del X11 No anadan nueva funcionalidad a menos que ustedes sepan de alguna aplicacion real que la requiera X ha mantenido en gran parte estos principios La implementacion de ejemplo es desarrollada con una vista hacia la extension y la mejora de la implementacion mientras que permanece compatible con el protocolo original de 1987 Interfaces de usuario Editar Interfaz grafica de usuario de GNOME Entorno de escritorio KDE 4 Interfaz grafica de usuario de Xfce X es primariamente una definicion de primitivas de protocolo y graficas y deliberadamente no contiene especificaciones de diseno de interfaz de usuario como estilos de boton menu barra de titulo para las ventanas En vez de eso un software de aplicacion tal como los gestores de ventana Widget toolkits de GUI y ambientes de escritorio o las interfaces graficas de usuario especificas de una aplicacion definen y proporcionan tales detalles Como resultado no hay interfaz X tipica y varios ambientes de escritorio han sido populares entre los usuarios Un manejador de ventana controla la colocacion y la apariencia de las ventanas de aplicacion Esto puede resultar en interfaces semejantes a las de Microsoft Windows o Macintosh los ejemplos incluyen Metacity en GNOME KWin en KDE Xfwm en Xfce o Compiz o tener controles radicalmente diferentes tales como tiling window manager como wmii o Ratpoison Los manejadores de ventana abarcan en sofisticacion y complejidad desde los mas simples ej twm el manejador de ventana basico suministrado con X o evilwm un manejador de ventana extremadamente liviano hasta los ambientes de escritorio mas completos tales como Enlightenment Muchos usuarios usan X con un ambiente de escritorio que independientemente del manejador de ventana incluyen varias aplicaciones usando una interfaz de usuario consistente GNOME KDE y Xfce son los ambientes de escritorio mas populares El ambiente estandar de Unix es Common Desktop Environment CDE La iniciativa freedesktop org se dirige a la interoperabilidad entre el escritorio y los componentes necesarios para un escritorio X competitivo Puesto que el X es responsable de la interaccion entre el teclado y el raton con el escritorio grafico ciertos atajos de teclado han llegado a estar asociados con X Control Alt Backspace tipicamente termina la sesion actualmente corriendo en X mientras que el Control Alt conjuntamente con una tecla de funcion cambia a la consola virtual asociada Sin embargo esto es un detalle dejado al diseno de una implementacion de servidor X y no es universal por ejemplo las implementaciones de servidor X para Windows y Macintosh tipicamente no proporcionan estos atajos de teclado Implementaciones EditarLa implementacion de X Org es la implementacion canonica de X Debido al tipo de licencia libre han aparecido un numero de variaciones tanto libres como propietarias Los vendedores comerciales de UNIX han tendido a tomar la implementacion de fuente abierta y a adaptarla para su hardware usualmente personalizandola y anadiendo extensiones propietarias Hasta 2004 XFree86 proporciono la variante mas comun de X en sistemas como UNIX libres XFree86 comenzo un port de X para las PC compatibles 386 y para final de los anos 1990 se habia convertido en la mas grande fuente de innovacion tecnica en X y el estandar de facto del desarrollo de X 1 Desde 2004 sin embargo el X Org Server una bifurcacion fork de XFree86 ha llegado a ser predominante Mientras es comun asociar X con Unix los servidores X tambien existen nativamente dentro de otros ambientes graficos El sistema operativo OpenVMS de Hewlett Packard incluye como su ambiente de escritorio estandar una version de X con el CDE conocida como DECwindows El Mac OS X v10 3 Panther y el Mac OS X v10 4 Tiger de Apple incluyen X11 app basado en XFree86 4 3 y X11R6 6 con una mejor integracion de Mac OS X en el Mac OS X v10 5 Leopard X org Apple incluyo el X org X11R7 2 Codebase en vez del XFree86 X11R6 8 Los servidores de terceros bajo el Mac OS 7 8 y 9 incluyeron el eXodus de White Pine Software y el MacX de Apple Microsoft Windows no es comercializado con soporte para X pero existen muchas implementaciones de terceros tanto de software libre tales como Cygwin X Xming y WeirdX como de productos propietarios tales como Xmanager Exceed MKS X Server Reflection X y X Win32 Cuando un sistema operativo con un sistema de ventana nativo es anfitrion de X adicionalmente el sistema X puede usar o no usar su propio escritorio en una ventana anfitriona separada o puede ejecutarse rootless significando que el escritorio X esta oculto y el ambiente anfitrion de ventana maneja la geometria y apariencia de las ventanas hospedadas en la pantalla del anfitrion Terminales X Editar Un dispositivo de computacion de red Network Computing Devices NCD el terminal X NCD 88k Articulo principal X terminal Un terminal X es un cliente ligero que solamente ejecuta un servidor X Esta arquitectura llego a ser popular para construir paquetes de terminales baratos para que muchos usuarios usaran simultaneamente el mismo gran servidor de computadora para ejecutar programas de aplicacion como clientes de cada terminal X Este uso esta muy cerca con la intencion original del proyecto MIT Los terminales X exploran la red el dominio de difusion local usando el protocolo de control del X Display Manager para generar una lista de anfitriones disponibles que son permitidos como clientes Uno de los anfitriones de clientes debe ejecutar un X display manager El hardware dedicado para terminales X ha llegado a ser menos comun un PC o un moderno cliente ligero con un servidor X proporciona tipicamente la misma funcionalidad a igual o mas bajo costo Historia EditarPredecesores Editar Varios sistemas de pantalla de bitmap precedieron a X De Xerox vinieron los computadores Alto 1973 y Star 1981 De Apple vinieron el Lisa 1983 y el Macintosh 1984 El mundo de Unix tenia el Andrew Project 1982 y el terminal Blit de Rob Pike 1982 La Universidad Carnegie Mellon produjo una aplicacion de acceso remoto llamado Alto Terminal la cual desplegaba ventanas que se solapaban en el Xerox Alto e hizo anfitriones remotos tipicamente sistemas DEC VAX corriendo Unix responsables de manejar eventos de la exposicion de ventanas y refrescando el contenido de las ventanas cuanto era necesario X deriva su nombre como sucesor de un sistema de ventana anterior a 1983 llamado W precediendo la letra X en el alfabeto ingles El W Window System corrio bajo el sistema operativo V W uso un protocolo de red soportando terminales y ventanas de graficos el servidor mantenia la lista de pantallas Origen y desarrollo temprano Editar La idea original de X emergio en el MIT en 1984 como colaboracion entre Jim Gettys del Proyecto Athena y Bob Scheifler del MIT Computer Science and Artificial Intelligence Laboratory Scheifler necesitaba un ambiente de exhibicion de pantalla usable para depurar el Argus system El Proyecto Athena un proyecto comun entre Digital Equipment Corporation DEC el MIT e IBM para proporcionar facil acceso a los recursos de computacion para todos los estudiantes necesito un sistema de graficos de plataforma independiente para enlazar juntos los sistemas heterogeneos provenientes de multiples vendedores el sistema de ventana entonces bajo desarrollo en el Andrew Project de la universidad del Carnegie Mellon no hizo las licencias disponibles y no existian alternativas El proyecto soluciono esto creando un protocolo que podia ejecutarse tanto en aplicaciones locales como llamar a recursos remotos A mediados de 1983 un port inicial de W a Unix corrio a un quinto de su velocidad bajo V en mayo de 1984 Scheifler reemplazo el protocolo sincronico de W por un protocolo asincronico y las listas de pantalla con los graficos de modo inmediato para asi hacer la version 1 de X X se convirtio en el primer ambiente de sistema de ventanas en ofrecer verdadera independencia de hardware e independencia del vendedor Scheifler Gettys y Ron Newman trabajaron juntos y X progreso rapidamente Ellos lanzaron la Version 6 en enero de 1985 La DEC entonces se preparaba para lanzar la estacion de trabajo Ultrix juzgo a X como el unico ambiente de sistema de ventanas que probablemente estaria disponible a tiempo Los ingenieros de la DEC portaron el X6 a la pantalla QVSS de DEC en el MicroVAX En el segundo trimestre de 1985 X adquirio soporte de color para funcionar en la DEC VAXstation II GPX formando lo que se convirtio en la version 9 Un grupo en la Universidad Brown porto la version 9 al IBM RT PC pero los problemas de lectura de datos no alineados en el RT forzaron un cambio incompatible del protocolo llevando a la version 10 a finales de 1985 Por 1986 organizaciones externas habian comenzado a pedir el X El lanzamiento del X10R2 ocurrio en enero de 1986 el del X10R3 en febrero de 1986 Aunque el MIT hubiera licenciado gratuitamente el X6 a algunos grupos externos en ese momento decidio licenciar el X10R3 y las versiones futuras bajo de que fue conocido desde entonces como la licencia MIT intentando popularizar a X mas lejos y a cambio esperando que muchas mas aplicaciones estuvieran disponibles El X10R3 se convirtio en la primera version en alcanzar un despliegue amplio con tanto la DEC como Hewlett Packard lanzando productos basados en el Otros grupos portaron el X10 hacia Apollo Computer y estaciones de trabajo Sun e incluso al IBM AT Las demostraciones de la primera aplicacion comercial para X tomaron lugar en la feria de negocios Autofact de ese tiempo Era un sistema de diseno asistido por computador de ingenieria mecanica de Cognition Inc que corria en VAXes y exhibia la imagen en PC corriendo un servidor X La ultima version del X10 la X10R4 aparecio en diciembre de 1986Fueron hechos intentos para habilitar a los servidores X como dispositivos de colaboracion en tiempo real muy similar a como el Virtual Network Computing VNC posteriormente permitiria que un escritorio fuera compartido Uno de esos esfuerzos tempranos fue la herramienta SharedX de Philip J Gust Aunque X10 ofreciera una funcionalidad interesante y potente habia llegado a ser obvio que el protocolo X podria tener un diseno mas neutral al hardware antes de que fuera demasiado extensamente adoptado pero el MIT por si solo no tendria los recursos disponibles para un rediseno tan completo Mientras que sucedia esto el Western Software Laboratory WSL de DEC se encontro a si mismo entre proyectos con un equipo experimentado Smokey Wallace del WSL y Jim Gettys propusieron que el DEC WSL construyera el X11 y lo hiciera libremente disponible bajo los mismos terminos que el X9 y el X10 Este proceso comenzo en mayo de 1986 con el protocolo concluido en agosto la prueba alfa del software comenzo en febrero de 1987 la prueba beta en mayo el lanzamiento del X11 finalmente ocurrio el 15 de septiembre de 1987 El diseno del protocolo X11 encabezado por Scheifler fue discutido extensivamente en listas de correo abiertas en el naciente Internet donde se extendio un puente a los groupos de noticia de USENET Gettys se mudo desde el Systems Research Center de DEC a California para ayudar a dirigir el trabajo de desarrollo del X11 en el WSL donde Phil Karlton y Susan Angebrandt encabezaban el diseno y la implementacion del servidor de ejemplo del X11 Por lo tanto X representa uno de los primeros muy grandes proyectos distribuidos de software libre El MIT X Consortium y el X Consortium Inc Editar X Window System un ejemplo historico de la interfaz grafica de usuario y aplicaciones comunes la distribucion del MIT X Consortium corriendo bajo el manejador de ventana twm X Terminal Xbiff xload y un navegador grafico de paginas de manuales Man page En 1987 con el exito del X11 siendo evidente el MIT deseaba abandonar la administracion del X pero en una reunion de junio de 1987 con nueve vendedores los vendedores le dijeron a MIT que ellos creian en la necesidad de un entidad neutral para evitar que X se fragmentara en el mercado En enero de 1988 el MIT X Consortium se formo como un grupo no lucrativo de vendedores con Scheifler como director para dirigir el desarrollo futuro de X en una atmosfera neutral inclusiva de intereses comerciales y educativos Jim Fulton se unio en enero de 1988 y Keith Packard en marzo de 1988 como desarrolladores mayores con Jim enfocandose en Xlib fuentes manejadores de ventanas y utilidades y Keith reimplemento el servidor Donna Converse Chris D Peterson y Stephen Gildea se unieron mas adelante ese ano enfocandose en juegos de herramientas toolkits y conjuntos de widgets trabajando de cerca con Ralph Swick del proyecto Athena del MIT El MIT X Consortium produjo varias revisiones significativas del X11 las primeras el Release 2 X11R2 en febrero de 1988 Ralph Mor y Jay Hersh se unieron mas adelante al equipo En 1993 como el MIT X Consortium se preparo para salir del MIT el equipo fue unido por R Gary Cutbill Kaleb Keithley y David Wiggins 2 En 1993 el X Consortium Inc una sociedad no lucrativa se formo como el sucesor del MIT X Consortium Lanzo el X11R6 el 16 de mayo de 1994 En 1995 tomo el desarrollo del Motif toolkit y el Common Desktop Environment de los sistemas Unix El X Consortium se disolvio a finales de 1996 produciendo una revision final el X11R6 3 y una herencia de creciente influencia comercial en el desarrollo 3 4 The Open Group Editar Articulo principal The Open Group En enero de 1997 el X Consortium paso la administracion de X a The Open Group un grupo de vendedores formado a principios de 1996 por la fusion de la Open Software Foundation con X Open El The Open Group lanzo el X11R6 4 a principios de 1998 Controversialmente el X11R6 4 se aparto de los terminos de licenciamiento liberales tradicionales a medida que The Open Group intentaba asegurar el fiananciamiento para el desarrollo de X 5 Los nuevos terminos habrian prevenido su adopcion por muchos proyectos tales como el XFree86 e incluso por algunos vendedores comerciales Despues de que XFree86 parecia estar evaluando una bifurcacion fork The Open Group relicencio el X11R6 4 bajo la licencia tradicional en septiembre de 1998 6 El ultimo lanzamiento de The Open Group vino como el X11R6 4 patch 3 X Org y XFree86 Editar Articulo principal X Org Articulo principal XFree86 El XFree86 se origino en 1992 desde el servidor X386 para los sistemas IBM PC compatibles incluidos con el X11R5 en 1991 escrito por Thomas Roell y Mark W Snitily y donados al MIT X Consortium por Snitily Graphics Consulting Services SGCS XFree86 evoluciono en el tiempo desde apenas un port de X hasta la implementacion lider y mas popular y se convirtio en el administrador de facto del desarrollo de X 1 En mayo de 1999 The Open Group formo X Org X Org superviso el lanzamiento de las versiones X11R6 5 1 en adelante En ese momento el desarrollo X llego a estar moribundo 7 la mayor parte de la innovacion tecnica desde que el X Consortion se habia disuelto tomaba lugar en el proyecto XFree86 8 En 1999 el equipo de XFree86 se unio a X Org como un miembro honorario sin pago 9 alentado por varias companias interesadas en usar XFree86 con Linux y en su estatus como la mas popular version de X Por 2003 surgio con la popularidad de Linux y por lo tanto la base instalada de X X Org permanecio inactivo 10 y el desarrollo activo tomo lugar en el XFree86 Sin embargo habia un considerable desarrollo disidente dentro del XFree86 El proyecto XFree86 sufrio de una percepcion como un modelo de desarrollo demasiado similar al de una catedral los desarrolladores no podian tener un acceso commit CVS 11 12 y los vendedores tenian que mantener un conjunto extensivo de parches 13 En marzo de 2003 la organizacion CFree86 expulso a Keith Packard quien se habia unido a XFree86 despues del final del MIT X Consortium original con considerable malestar 14 15 16 X Org y XFree86 comenzaron a discutir una reorganizacion orientada a nutrir apropiadamente el desarrollo de X 17 18 19 Jim Gettys habia estado empujando fuertemente por un modelo de desarrollo abierto desde por lo menos desde el ano 2000 20 Gettys Packard y varios otros comenzaron a discutir en detalle los requerimientos para el gobierno efectivo de X con un desarrollo abierto Finalmente en un eco de la disputa de licenciamiento del X11R6 4 XFree86 lanzo la version 4 4 en febrero de 2004 bajo una licencia mas restrictiva que hizo que muchos proyectos que confiaban en X la encontraran inaceptable 21 La clausula anadida a la licencia estaba basada sobre la clausula original publicada por la licencia BSD que fue vista por la Free Software Foundation y Debian como incompatible con la GNU General Public License 22 Otros grupos vieron restricciones posteriores como estando en contra del espiritu original de X OpenBSD amenazando con un fork por ejemplo El asunto de la licencia combinado con las dificultades de tener los cambios dejo a muchos sintiendo que el momento estaba maduro para un fork 23 X Org Foundation Editar Articulo principal X Org Foundation A principios de 2004 varias personas de X Org y freedesktop org formaron la X Org Foundation y el Open Group les dio el control del nombre de dominio X org Esto marco un cambio radical en el gobierno de X Puesto que los administradores de X desde 1988 incluyendo la X Org previa habian sido organizaciones de vendedores Ahora la fundacion estaba encabezada por desarrolladores de software y usaba una comunidad de desarrollo basada en el modelo bazar que confiaba en el involucramiento de afuera Los miembros estaban abiertos a los individuos con los miembros corporativos estando en la forma de patrocinadores Algunas grandes corporaciones como Hewlett Packard y Sun Microsystems actualmente soportan a la X Org Foundation La fundacion toma un rol inadvertido sobre el desarrollo de X las decisiones tecnicas son hechas por sus meritos al alcanzar un vasto consenso entre los miembros de la comunidad Las decisiones tecnicas no son hechas por la junta directiva en este sentido es fuertemente modelado por el no intervencionismo tecnico de la Fundacion GNOME La fundacion no emplea a ningun desarrollador La fundacion lanzo el X11R6 7 el X Org Server en abril de 2004 basado en el XFree86 4 4RC2 con los cambios del X11R6 6 combinados Gettys y Packard habian tomado la ultima version del XFree86 bajo la licencia vieja haciendo un punto de un modelo de desarrollo abierto y reteniendo la compatibilidad GPL trajeron a bordo muchos de los viejos desarrolladores 22 El X11R6 8 vino en septiembre de 2004 Anadio un numero significativo de caracteristicas incluyendo el soporte preliminar para ventanas translucidas y otros efectos visuales sofisticados lentes de aumento para la pantalla vistas en miniatura thumbnailers y facilidades para integrar sistemas de pantalla inmersiva en 3D tales como el Proyecto Looking Glass de Sun y el Croquet Project Aplicaciones externas llamadas manejadores composicion de ventanas proprocionan politicas para la apariencia visual El 21 de diciembre de 2005 24 X Org lanzo el X11R6 9 la fuente libre monolitica para usuarios heredados y el X11R7 0 el mismo codigo fuente separado en modulos independientes cada uno mantenido en proyectos separados 25 La fundacion lanzo el X11R7 1 el 22 de mayo de 2006 cerca de cuatro meses despues del 7 0 con mejoras considerables de caracteristicas 26 Historial de versiones EditarVersion Fecha de lanzamiento Cambios importantesX1 Junio de 1984 Primer uso del nombre X varios cambios fundamentales con respecto a W X6 Enero de 1985 Primera version licenciada a algunas companias ajenas X9 Septiembre de 1985 Color Primera version bajo la Licencia MIT X10 Fines de 1985 IBM RT PC AT corriendo DOS y otrosX10R2 Enero de 1986X10R3 Febrero de 1986 Primer release fuera de MIT Se hizo a uwm el manejador de ventanas estandar X10R4 Diciembre de 1986 Ultima version de X10 X11 Septiembre 15 1987 Primera version del actual protocolo X11R2 Febrero de 1988 Primer lanzamiento del X Consortium 27 X11R3 Octubre 25 1988 XDMX11R4 Diciembre 22 1989 XDMCP twm vino como el manejador de ventanas estandar se mejoraron aplicaciones se agrego la Shape extension y nuevas fuentes X11R5 Septiembre 5 1991 PEX Xcms color management servidor de fuentes X386X11R6 Mayo 16 1994 ICCCM v2 0 Inter Client Exchange X Session Management X Synchronization extension X Image extension XTEST extension X Input X Big Requests XC MISC cambios en XFree86 X11R6 1 Marzo 14 1996 Extension X Double Buffer extension X keyboard extension X Record X11R6 2X11R6 3 Broadway Diciembre 23 1996 Funcionalidad Web LBX Ultima entrega del X Consortium X11R6 2 es el nombre de una parte de X11R6 3 que tiene solo como nuevas caracteristicas sobre R6 1 a XPrint y la implementacion de Xlib de la escritura vertical y el soporte de caracteres definido por el usuario 28 X11R6 4 Marzo 31 1998 Xinerama 29 X11R6 5 Version interna de X Org no disponible publicamente X11R6 5 1 Agosto 20 2000X11R6 6 Abril 4 2001 Correccion de errores X11R6 7 0 Abril 6 2004 Primera version de X Org Foundation basandose principalmente en XFree86 4 4rc2 Distribucion para el usuario final Eliminacion de XIE PEX y libxml2 30 X11R6 8 0 Septiembre 8 2004 Transparencia en ventanas XDamage Distributed Multihead X XFixes Composite XEvIE X11R6 8 1 Septiembre 17 2004 Arreglos de seguridad libxpm X11R6 8 2 Febrero 10 2005 Correccion de errores actualizacion de controladores X11R6 9X11R7 0 Diciembre 21 2005 EXA Mayor cantidad de cambios al codigo fuente Surge la version modular 7 0 y monolitica 6 9 31 X11R7 1 Mayo 22 2006 Mejoras en EXA Kdrive integrado AIGLX Mejoras en las diversas plataformas y sistemas operativos 32 X11R7 2 15 de febrero de 2007 Eliminacion de LBX y del controlador de teclado incluido X ACE XCB mejoras en la autoconfiguracion 33 X11R7 3 6 de septiembre de 2007 Xserver 1 4 2 nput hotplug output hotplug RandR 1 2 KDrive DTrace EXA soporte para UnixWare 34 X11R7 4 23 de septiembre de 2008 Xserver 1 5 1 Pci rework EXA speed ups X EXPORT GLX 1 4 mayor rapidez de arranque del servidor 35 X11R7 5 26 de octubre de 2009 36 Xserver 1 7 Xi 2 XGE soporte para E EDID RandR 1 3 GPU object MPX predictable pointer acceleration DRI2 memory manager modulo de seguridad SELinux eliminacion de bibliotecas y extensiones obsoletas 37 X11R7 6 20 de diciembre de 2010 Xi 3 y XKB 2 soporte para UnixWare 38 requerimiento de XCB 39 X Server 1 9X11R7 7 6 de junio de 2012 Cambios en el servidor Xorg 1 10 extension RandR 1 4 extension Sync 1 3 Versiones futuras Editar Version Editar Fecha de lanzamiento Cambios importantesX11R7 8 2013 Xi 3 XKB 2 Vease tambien EditarProtocolo base de X Window System Protocolos y arquitectura de X Window System Xlib AIGLX X Org The Open Group XFree86 Multi pointer X Server Gestor de ventanas Entorno de escritorio X Display Manager GNOME Display Manager KDE Display Manager Multiseat Display Manager VNC XDMCP Multiseat LTSPReferencias Editar a b Announcement Modification to the base XFree86 TM license Archivado el 7 de septiembre de 2005 en Wayback Machine 02 Feb 2004 Robert W Scheifler and James Gettys X Window System Core and extension protocols X version 11 releases 6 and 6 1 Digital Press 1996 ISBN 1 55558 148 X Financing Volunteer Free Software Projects 10 Jun 2005 Lessons Learned about Open Source 2000 X statement 02 Apr 1998 X11R6 4 Sample Implementation Changes and Concerns Q amp A The X Factor February 04 2002 The Evolution of the X Server Architecture 1999 A Call For Open Governance Of X Development Archivado el 12 de febrero de 2005 en Wayback Machine 23 Mar 2003 Another teleconference partial edited transcript Archivado el 12 de febrero de 2005 en Wayback Machine 13 Apr 2003 Keith Packard issue Archivado el 12 de febrero de 2005 en Wayback Machine 20 Mar 2003 Cygwin XFree86 No longer associated with XFree86 org 27 Oct 2003 On XFree86 development 9 Jan 2003 Invitation for public discussion about the future of X Archivado el 12 de febrero de 2005 en Wayback Machine 20 Mar 2003 A Call For Open Governance Of X Development Archivado el 12 de febrero de 2005 en Wayback Machine 21 Mar 2003 Notes from a teleconference held 2003 3 27 Archivado el 12 de febrero de 2005 en Wayback Machine 03 Apr 2003 A Call For Open Governance Of X Development Archivado el 22 de diciembre de 2004 en Wayback Machine 24 Mar 2003 A Call For Open Governance Of X Development Archivado el 6 de enero de 2005 en Wayback Machine 23 Mar 2003 Discussing issues Archivado el 27 de diciembre de 2004 en Wayback Machine 14 Apr 2003 Lessons Learned about Open Source 2000 XFree86 4 4 List of Rejecting Distributors Grows Feb 18 2004 a b Appendix A The Cautionary Tale of XFree86 June 5 2002 X Marks the Spot Looking back at X11 Developments of Past Year Feb 25 2004 X11R6 9 and X11R7 0 Officially Released December 21 2005 Modularization Proposal 2005 03 31 Proposed Changes for X11R7 1 2006 04 21 The X Window System History and Architecture 1 September 1999 XFree86 and X11R6 3 December 1999 The Open Group Announces Internet Ready X Window System X11R6 4 March 31 1998 X Org Foundation releases X Window System X11R6 7 April 7 2004 Changes Since R6 8 2005 10 21 Release Notes for X11R7 1 22 May 2006 The X Org Foundation released 7 2 0 aka X11R7 2 February 15th 2007 X server version 1 4 release plans Retrieved 2007 08 25 Foundation Releases X7 4 X org Consultado el 10 de noviembre de 2009 X Org Foundation Releases X7 4 X Org Wiki Planes 7 5 Wiki 7 6 release plans X org Consultado el 10 de noviembre de 2009 Thinking towards 7 6 katamari including xcb Lists x org Consultado el 10 de noviembre de 2009 Enlaces externos EditarX Org Foundation Sitio web oficial en ingles Curso del sistema de ventanas X en espanol Nomachine en ingles XFree86 en ingles freedesktop org en ingles Datos Q178481 Multimedia X Window SystemObtenido de https es wikipedia org w index php title Sistema de ventanas X amp oldid 132428746, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos