Las X Windows (II)
Continuación de Las X Windows (I)
¿Qué es un display?
Te habrás fijado en los argumentos "-display :0" de los comandos para abrir ventanas en un servidor X. Un "display" es una pantalla en concreto a la que conectarse. Por defecto, cuando se arranca X se crea un display llamado ":0", ese es el display cero en la máquina local. Sin embargo, GNU/Linux y Cygwin bajo MS-Windows pueden ejecutar más de un servidor X.
Algunos ordenadores pueden correr más de un servidor X simultáneamente
Para demostrarlo, asegúrate de que no está corriendo ningún servidor X en la máquina y teclea en la consola (CTRL-ALT-F1 en GNU/Linux, o en la ventana de Cygwin en MS-Windows):
X :0 &
para arrancar el primer servidor X. Luego vuelve a la consola y teclea:
X :1 &
Esto arrancará el segundo. Otra vez en la consola:
xauth add :0 . `mcookie`
Si no lo has hecho ya, también...
xauth add :1 . `mcookie`
para garantizarte los permisos para conectarte a los servidores. Después introduce los comandos:
xterm -display :0 -bg yellow
xterm -display :1 -bg purple
Si vas al primer servidor X (CTRL-ALT-F7 en GNU/Linux, o selecciona la ventana correspondiente en MS-Windows) deberías ver una xterm con el fondo amarillo, y en el segundo servidor X (CTRL-ALT-F8 en GNU/Linux) deberías ver una con el fondo morado. Es posible ejecutar un gestor de ventanas en un servidor X y otro gestor en otro servidor. También es posible ejecutar servidores X con resoluciones diferentes, y logarse con usuarios diferentes - aunque no lo describamos aquí. Esto es como tener dos conjuntos de dispositivos de entrada / salida (teclado, ratón y monitor) conectados a la misma máquina.
Sin embargo, esto no es todo. El display ":0" es en realidad una abreviatura de "0:0". Se asume el "punto 0" a ser que se defina otro número. Éste es el número de la pantalla del display. Un display en X consiste en un teclado, un ratón y una o más pantallas. Imagina varios monitores. El display “:0.0” es el primer monitor, “:0.1” es el segundo y así. Casi nunca se usa esto ya que la mayoría de los PCs y estaciones de trabajo sólo tienen una pantalla. Sin embargo, X te permite más – la capacidad multi-pantalla de las X puede comprobarse utilizando el programa “Xnest”, el cual es a la vez cliente y servidor; ejecuta un servidor X virtual en una ventana X. Para comprobar esto, desde una xterm (en una sesión con un gestor de ventanas arrancado) ejecuta:
Xnest :3 -scrns 2 &
(Fíjate en la X mayúscula). Esto ejecuta un cliente “Xnest” emulando un servidor X con dos pantallas utilizando el número 3. Cada pantalla está representada en una ventana X diferente. Ahora desde la xterm:
xauth add :3 . `mcookie`
para obtener permisos:
xterm -display :3.0 -bg red
xterm -display :3.1 -bg blue
para obtener dos xterms en estas pantallas (virtuales). Si ejecutas “mwm” o “wmaker” en una de ellas y “twm” en la otra verás la versatilidad de las X. Para salir simplemente cierra la ventana de Xnest.
Una sesión Xnest con emulando un servidor X con dos pantallas
Un display en X consiste en un teclado, un ratón y una o más pantallas, como varios monitores.
Para ahorrarte introducir en el argumento "-display" cada vez que tecleas un comando, los clientes X usarán el display especificado en la variable de entorno DISPLAY. Por tanto...
xterm -display :0 &
es lo mismo que...
DISPLAY=:0
export DISPLAY
xterm &
Cuando arrancamos una sesión X, o varios clientes X en realidad, automáticamente asigna el display que está conectado a la variable DISPLAY y así evitar que el usuario tenga que especificarlo. Una pequeña advertencia: si cambias la variable DISPLAY puedes interferir en los comandos que introduzcas después.
Si no se definen argumentos "-display" ni la variable DISPLAY, los cliente X usarán el display :0.0 por defecto.
Continuará...
¿Qué es un display?
Te habrás fijado en los argumentos "-display :0" de los comandos para abrir ventanas en un servidor X. Un "display" es una pantalla en concreto a la que conectarse. Por defecto, cuando se arranca X se crea un display llamado ":0", ese es el display cero en la máquina local. Sin embargo, GNU/Linux y Cygwin bajo MS-Windows pueden ejecutar más de un servidor X.
Algunos ordenadores pueden correr más de un servidor X simultáneamente
Para demostrarlo, asegúrate de que no está corriendo ningún servidor X en la máquina y teclea en la consola (CTRL-ALT-F1 en GNU/Linux, o en la ventana de Cygwin en MS-Windows):
X :0 &
para arrancar el primer servidor X. Luego vuelve a la consola y teclea:
X :1 &
Esto arrancará el segundo. Otra vez en la consola:
xauth add :0 . `mcookie`
Si no lo has hecho ya, también...
xauth add :1 . `mcookie`
para garantizarte los permisos para conectarte a los servidores. Después introduce los comandos:
xterm -display :0 -bg yellow
xterm -display :1 -bg purple
Si vas al primer servidor X (CTRL-ALT-F7 en GNU/Linux, o selecciona la ventana correspondiente en MS-Windows) deberías ver una xterm con el fondo amarillo, y en el segundo servidor X (CTRL-ALT-F8 en GNU/Linux) deberías ver una con el fondo morado. Es posible ejecutar un gestor de ventanas en un servidor X y otro gestor en otro servidor. También es posible ejecutar servidores X con resoluciones diferentes, y logarse con usuarios diferentes - aunque no lo describamos aquí. Esto es como tener dos conjuntos de dispositivos de entrada / salida (teclado, ratón y monitor) conectados a la misma máquina.
Sin embargo, esto no es todo. El display ":0" es en realidad una abreviatura de "0:0". Se asume el "punto 0" a ser que se defina otro número. Éste es el número de la pantalla del display. Un display en X consiste en un teclado, un ratón y una o más pantallas. Imagina varios monitores. El display “:0.0” es el primer monitor, “:0.1” es el segundo y así. Casi nunca se usa esto ya que la mayoría de los PCs y estaciones de trabajo sólo tienen una pantalla. Sin embargo, X te permite más – la capacidad multi-pantalla de las X puede comprobarse utilizando el programa “Xnest”, el cual es a la vez cliente y servidor; ejecuta un servidor X virtual en una ventana X. Para comprobar esto, desde una xterm (en una sesión con un gestor de ventanas arrancado) ejecuta:
Xnest :3 -scrns 2 &
(Fíjate en la X mayúscula). Esto ejecuta un cliente “Xnest” emulando un servidor X con dos pantallas utilizando el número 3. Cada pantalla está representada en una ventana X diferente. Ahora desde la xterm:
xauth add :3 . `mcookie`
para obtener permisos:
xterm -display :3.0 -bg red
xterm -display :3.1 -bg blue
para obtener dos xterms en estas pantallas (virtuales). Si ejecutas “mwm” o “wmaker” en una de ellas y “twm” en la otra verás la versatilidad de las X. Para salir simplemente cierra la ventana de Xnest.
Una sesión Xnest con emulando un servidor X con dos pantallas
Un display en X consiste en un teclado, un ratón y una o más pantallas, como varios monitores.
Para ahorrarte introducir en el argumento "-display" cada vez que tecleas un comando, los clientes X usarán el display especificado en la variable de entorno DISPLAY. Por tanto...
xterm -display :0 &
es lo mismo que...
DISPLAY=:0
export DISPLAY
xterm &
Cuando arrancamos una sesión X, o varios clientes X en realidad, automáticamente asigna el display que está conectado a la variable DISPLAY y así evitar que el usuario tenga que especificarlo. Una pequeña advertencia: si cambias la variable DISPLAY puedes interferir en los comandos que introduzcas después.
Si no se definen argumentos "-display" ni la variable DISPLAY, los cliente X usarán el display :0.0 por defecto.
Continuará...
Etiquetas: software
0 comentarios:
Publicar un comentario
Suscribirse a Enviar comentarios [Atom]
<< Inicio