Saltar al contenido

Diferencia entre Xorg y Gnome/KDE/Xfce

Posteriormente a indagar en diversos repositorios y sitios webs de internet al concluir descubrimos la respuesta que te enseñaremos ahora.

Solución:

(Estoy investigando la relación de GNOME y X. Me gustaría compartir algunos de mis entendimientos. Lo presentaré de una manera lógica tanto como pueda).

1. ¿De qué está compuesta la GUI?

A continuación se muestra una ilustración de los componentes básicos de una GUI.

ingrese la descripción de la imagen aquí

Él key componente es el servidor de visualización. Hay varios servidores de visualización disponibles. Como:

  • X11 (principalmente para *nix)
  • Wayland (principalmente para *nix)
  • Mir (principalmente para *nix)
  • SurfaceFlinger (Esto es para Google Android).
  • Compositor de cuarzo (esto es lo que usa Apple MacOS).
  • Desktop Window Manager (Esto es lo que usa Microsoft Windows).

2. ¿Qué es X?

X, X11 y X Window System son sinónimos. Todos ellos representan un sistema de ventanas. Windowing System es un tipo de interfaz gráfica de usuario (GUI, como mencioné anteriormente) que implementa el paradigma WIMP (ventanas, íconos, menús, puntero) para una interfaz de usuario.

Aquí hay una lista de los principales sistemas de ventanas para los sistemas Linux y Windows.

El componente principal de cualquier sistema de ventanas suele llamarse servidor de visualización (no sorprende porque el sistema de ventanas es una especie de GUI y el servidor de visualización es el key parte de cualquier GUI), aunque otros nombres como servidor de ventana o compositor también se utilizan.

Cualquier aplicación que se ejecuta y presenta su GUI es una cliente de El servidor de visualización. El servidor de visualización y sus clientes se comunican entre sí a través de un protocolo de comunicaciones, que normalmente se denomina protocolo del servidor de visualización, siendo el servidor de visualización el mediador entre los clientes y el usuario. El servidor de visualización recibe toda la entrada del núcleo, que el núcleo recibe de todos los dispositivos de entrada conectados, como teclados, dispositivos señaladores o pantallas táctiles, y la transmite al cliente correcto. El servidor de visualización también es responsable de la salida de los clientes al monitor de la computadora. UN protocolo del servidor de visualización puede ser apto para redes o incluso transparente para redes. (para que pueda ver, se trata esencialmente de flujo de datos y enrutamiento, los datos visuales siguen siendo datos).

Y según aquí:

Un servidor X es un programa que proporciona servicios de visualización y entrada de usuario a otros programas. En comparación, un servidor de archivos proporciona a otros programas acceso a dispositivos de almacenamiento de archivos. Los servidores de archivos generalmente se encuentran en una ubicación remota y usted utiliza los servicios de un servidor de archivos desde la máquina en la que se encuentra. Por el contrario, un servidor X generalmente se ejecuta en la máquina en la que se encuentra; Los servicios de visualización y entrada de usuario pueden ser solicitados por programas que se ejecutan en su máquina, así como por programas que se ejecutan en remoto máquinas.

Entonces X se compone de:

  • servidor de visualización
  • protocolo del servidor de visualización
  • algunas librerías para el desarrollo
  • Y otras cosas

ingrese la descripción de la imagen aquí

Según aquí:

X proporciona el marco básico para un entorno GUI: dibujar y mover ventanas en el dispositivo de visualización e interactuar con un mouse y un teclado. X no exige la interfaz de usuario; esto lo manejan los programas individuales. Como tal, el estilo visual de los entornos basados ​​en X varía mucho; diferentes programas pueden presentar interfaces radicalmente diferentes.

En otras palabras, X solo le da a un programa la capacidad de hacer cosas básicas como dibujar/mover ventanas y entrada interactuando. X no impone estilos visuales. Entonces lo que dijiste”…Le da un estándar a las aplicaciones para presentar sus UI’s…” Es incorrecto.

3. ¿Qué es GNOME/KDE?

GNOME y KDE son entornos de escritorio Linux. Un entorno de escritorio es un conjunto de programas que se ejecutan sobre un sistema operativo, que comparten una GUI común.

Pero tal como mencioné anteriormente, X11, como servidor de visualización, solo proporciona la capacidad básica de dibujo a través de algunas librerías como Xlib o XCB. Las aplicaciones que interactúan directamente con X11 a través de dichas bibliotecas pueden tener estilos visuales radicalmente diferentes.

Entonces, ¿cómo crear una GUI común? Aquí vienen los kits de herramientas de widgets. Como GTK+ y Qt. Son populares en Wayland y X11 sistemas de ventanas.

GNOME utiliza GTK+.

KDE utiliza Qt.

Y aquí hay una comparación de los entornos de escritorio del sistema X Window.

Para resumir…

Dibujo una ilustración conceptual aproximada. Las 3 partes arriba del sistema operativo son muy personalizables. Por eso surge tanta flexibilidad (confusión).

ingrese la descripción de la imagen aquí

AGREGAR 1 – 1:26 p. m. 21/09/2018

Y aquí hay algunas discusiones sobre QT y GTK (aunque tal vez fuera de tema en este hilo…)

Xorg (y el anterior Xfree, y más temprano X10) es un servidor para un protocolo más completamente llamado X Window System; permite que las aplicaciones dibujen en “la pantalla”. Que puede ser remoto con X. Gnome/KDE/Xfce y otros administradores de ventanas/entornos de escritorio son aplicaciones especiales que se ejecutan en X que dibujan cosas como bordes e íconos y minimizan y maximizan que las propias aplicaciones no.

Y, dado que tanto Gnome como KDE pueden ejecutarse (o lo hicieron) en MS Windows (y Wayland en diversos grados), sí, son (o pueden ser) independientes de X.

Comentarios y puntuaciones

Si te ha resultado útil este post, sería de mucha ayuda si lo compartes con el resto juniors de esta manera nos ayudas a extender nuestro contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *