Distribuciones, Entornos de escritorio y Gestores de ventana.


Una de las situaciones más simpáticas con las que me topo diariamente, es que me pregunten que sistema operativo uso, a lo que yo siempre contesto Debian, pero lo que usted esta viendo es el entorno de escritorio X.

Naturalmente quien pregunta siempre termina más confundido que en un principio, primero porque piensa que toda distribución es un sistema operativo distinto, segundo porque considera que la interfaz gráfica de cada distribución es única o mejor dicho propia de la misma y tercero porque no comprende que es un entorno de escritorio como tal, lo cual es lógico pensar, si toda su vida ha usado Windows.

Ahora no soy un entendido ni un experto en el tema por lo tanto este breve artículo no pretende describir tecnicismos complejos, es tan solo una forma sencilla de explicar a las personas nuevas,  cosas elementales de nuestro mundo linuxero.

Sistema Operativo:

Con fines ilustrativos lamentablemente está windows
Con fines ilustrativos lamentablemente está windows

 

Entramos en materia, primero definamos que es un Sistema Operativo como tal, según wikipedia.

Un sistema operativo  es un programa o conjunto de programas que en un sistema informático gestiona los recursos de hardware y provee servicios a los programas de aplicación, ejecutándose en modo privilegiado respecto de los restantes.

Ateniéndonos a dicha definición un SO es aquel que gestiona los recursos del sistema, asignando adecuadamente a los procesos prioridades de ejecución, al mismo tiempo que media entre dichas aplicaciones y el hardaware, de modo que estrictamente hablando no podemos ver al sistema operativo y señalarlo con el dedo, pero no nos adelantemos, vamos por pasos.

En Gnu/linux lo anterior se percibe más fácilmente, puesto que el sistema operativo y por definición, consta del sistema llamado Gnu, que entre otras cosas contiene bibliotecas y herramientas de programación para crear un SO similar a unix, pero Gnu necesita de un programa o aplicación que interactúe con el hardware, tal como habíamos dicho anteriormente, dicho programa recibe el nombre de núcleo y en este caso se llama Linux.

Es entonces dicha “mezcla” la encargada de realizar las tareas propias de un SO, ahora sí, tal vez quede más claro cuando digo que al encender nuestro ordenador con Gnu/linux, no podemos señalar una parte y decir este es el sistema operativo, puesto que un sistema es más de lo que se ve.

Servidor de las X o Xorg:
xorg_logo

Al tener un sistema operativo Gnu/linux instalado este no necesariamente  dispone de interfaz gráfica, de hecho como tal no puede, es por esto que existe xserver-xorg o xorg a secas.

 xorg lo que hace es implementar mediante un servidor 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.

En lenguaje simple, aunque tal vez no sea lo más correcto es, permitir ejecutar instancias gráficas de cualquier aplicación o conjunto de aplicaciones, lo más común sería decir que hace posible dibujar ventanas y diversos componentes, sin embargo Xorg como tal no hace esto, es decir permite o hace posible, pero no dibuja ni mucho menos gestiona ventanas.

Gestores de ventana:
Fluxbox-logo2

Siguiendo el mismo orden un gestor de ventanas o Windows Manager (wm), es necesario para dibujarlas, además de establecer su posición, comportamiento y por supuesto darle al usuario la opción de moverla, minimizarla, maximizarla y cerrarla.

Los gestores de ventana actuales adolecen de muchas funcionalidades por defecto, es por esto que hay que editar archivos de configuración, para habilitar menús o instalar aplicaciones para gestionar muchas de sus características, esto hace que no sean fáciles de usar para un novato.

Sin embargo si hay algo a tener muy en cuenta es que un gestor de ventanas consume muy pocos recursos, haciendo ideal una implementación del mismo, en equipos de bajas prestaciones, esto se debe precisamente que el gestor es independiente de otras aplicaciones o más correctamente no viene integrados con nada más allá de lo que necesita para su funcionamiento.

Por poner algunos ejemplos:

  1. Openbox (En la sección screenshots tengo capturas de este gran WM )
  2. Fluxbox
  3. Icewm
  4. Jwm
  5. Kwin
  6. Xfwm

Entornos de escritorios:
desktopenvironmentheader

Los elementos que conforman un entorno de escritorio son:

  • Un gestor de ventanas o WM.
  • Un gestor de archivos (para ver carpetas y nuestros archivos personales).
  • Un panel, que ofrece por medio de plugins menús hacía las aplicaciones.
  • Aplicaciones para gestionar Wallpapers.
  • Conjunto de iconos propios( No todos cuentan con esto ).
  • Herramientas para configurar elementos del Sistema Operativo de manera gráfica.
  • Un emulador de terminal o linea de comandos.
  • Y un sin fin de aplicaciones que se integran perfectamente entre si.

Como vemos esto es gradual un entorno de escritorio hace uso de un gestor de ventanas, pero a esto le agrega herramientas propias, que se integran adecuadamente, ejemplificando si abrimos nuestro gestor de archivos y queremos escuchar una canción, nuestro gestor de archivos le dirá al reproductor de música de nuestro entorno de escritorio, que reproduzca esa canción, haciendo de este modo que el usuario no se preocupe del vinculo que existe por debajo.

Un entorno de escritorio es la última instancia gráfica que vemos cuando usamos alguna distribución linux, y su uso no es exclusivo de una distro en especifico, sino que por lo general están disponibles para la mayoría de distribuciones, esto por supuesto  significa, que aunque una distro traiga en su edición principal determinado entorno de escritorio,este  puede ser cambiado por otro.

Es por lo anterior, que resulta un error tratar de distinguir una distribución linux por el entorno de escritorio que usa, porque vendría siendo similar a –si yo me pongo la ropa de mi padre entonces soy él, bueno espero que se entienda la idea.

Los entornos de escritorio más populares en Gnu/linux son los siguientes:

  •  KDE (El más configurable y bonito en mi opinión)
  • Xfce (Perfecto balance entre elegancia y rendimiento del sistema)
  • Gnome 3 (Actualmente el más criticado y polémico)
  • Lxde (Uno de los más simples,perfecto para equipos con pocos recursos)

Distribución linux:
Tux-Linux-Distros-800x800

Ahora si disponemos de todos los elementos necesarios para entender que es una distribución linux, ya sabemos que lo gráfico es lo menos importante en el concepto de distribución y también que no podemos clasificar a cada distribución como un Sistema Operativo por separado, sin embargo si hay que anotar que son distintas en muchos aspectos, tales como filosofía, público al que va dirigida, paquetería, comunidad, lanzamientos entre otros.

Una distribución incluye un conjunto de paquetes en los que va incluido un entorno  de escritorio y lógicamente todo lo que va por debajo, así como también proporciona herramientas para gestionar dichos paquetes, permitiendo así su instalación, desinstalación y configuración, también cuentan por lo general con repositorios desde los cuales es posible obtener el software que deseamos instalar, característica que nos evita perder largas horas en la web buscando un programa X por páginas poco confiables.

Las mayores diferencias entre distribuciones son las configuraciones, la forma de gestionar los paquetes y los ciclos de lanzamiento.

La forma de gestionar de paquetes cambia según sea la distro que usemos, salvo en el caso de que sea derivada de otra, entonces conserva las características de su madre, existen varios formatos de paquetes pre-compilados (tipo .exe de windows) solo por citar están los .RPM y los .DEB de fedora y debian respectivamente, entonces si tenemos el firefox.rpm este no podrá ser instalado en debian y viceversa, de lo anterior deducimos que el gestor de paquetes es decir el programa que nos permite la instalación de paquetes no es el mismo en estas dos distribuciones.

Configuraciones distintas para distros distintas que en esencia son iguales, suena complicado, pero haz de cuenta que aunque tengas un hermano con el mismo tipo de sangre que tu, probablemente tengan distintas formas de hacer una misma cosa, pues bien lo mismo es aplicable a las distribuciones, aunque en general son muy pocas cosas en las que difieren muchas veces es por usar aplicaciones distintas, pero no debemos inquietarnos por este hecho.

grafico_entornos

Bien a modo de conclusión espero haber expuesto claramente cada punto, sino es así o si me equivoque en algo háganmelo saber para no quedar en la ignorancia, acepto comentarios de todo tipo. Saludos y que estén bien, un abrazo.

Fuentes:

http://www.gnu.org/home.es.html
http://www.kde.org/community/whatiskde/
http://www.xfce.org/about
http://es.wikipedia.org/wiki/Entorno_de_escritorio
http://es.wikipedia.org/wiki/Distribuci%C3%B3n_Linux

Anuncios

10 thoughts on “Distribuciones, Entornos de escritorio y Gestores de ventana.

  1. Buen trabajo y gráfico que resume lo dicho. Gracias.

    Si queremos o necesitamos averiguar qué entorno de escritorio (o gestor de ventanas en su defecto) emplea la distribución de GNU/Linux que estamos utilizando podemos tener en cuenta …

    He probado las mejores opciones que he encontrado por ahí (con alguna adaptación) con a) GNOME bajo Linux Mint instalado; b) GNOME bajo Linux Mint Live USB; c) MATE bajo Linux Mint; d) LXDE bajo Lubuntu; e) JWM bajo Puppy Linux (JWM no es un entorno de escritorio -como los anteriores- sino un gestor de ventanas -de pila concretamente-). Mis resultados:

    1) (regular) Comando (en terminal o consola):
    env | grep DESKTOP_SESSION=
    a)&b) DESKTOP_SESSION=gnome ; c) DESKTOP_SESSION=default.desktop ; d) DESKTOP_SESSION=Lubuntu ; e) (nada)

    2) (regular) Comando (en terminal o consola):
    echo $GDMSESSION
    a)&b) gnome ; c) (nada) ; d) Lubuntu ; e) (nada)

    3) (bien, pero no perfecto) Comando (en terminal o consola):
    pgrep -l “gnome|kde|mate|cinnamon|lxde|xfce|jwm”
    o bien
    ps -A | egrep -i “gnome|kde|mate|cinnamon|lxde|xfce|jwm”
    a)&b) (BIEN) ; c) (BIEN) ; d) (MAL) ; e) (nada) & (BIEN)

    4) (muy bien, pero no perfecto) Programa o aplicación que viene de serie con todos los probados (en distros que no, se podría instalar fácilmente):
    HardInfo
    a) (nada) ; b) GNOME 2.32.0 ; c) MATE ; d) LXDE (Lubuntu) ; e) Unknown (Window Manager: JWM)

    CONCLUSIÓN: Una combinación de HardInfo y del comando ps -A | egrep -i “gnome|kde|mate|cinnamon|lxde|xfce|jwm” probablemente nos dará la respuesta buscada.

  2. Este comando parece útil:
    ls /usr/bin/*session*
    -> en GNOME devuelve /usr/bin/gnome-session (y más)
    -> en MATE devuelve /usr/bin/mate-session (y más)
    -> en LXDE devuelve /usr/bin/lxsession (y más)
    -> en JWM devuelve /usr/bin/icewm-session (debería ser jwm-session, ¿¡no!?)

    • Gracias por comentar Tdeer9, también sumamente útil tu info. Y vieras que lo probé en KDE y me tiró:
      /usr/bin/ck-launch-session /usr/bin/ck-list-sessions /usr/bin/x-session-manager
      Así que en dos ocasiones pego en el poste, lastima que no sirva para todos 😦 pero igual lo bueno es que también están las opciones que dijo el compañero Ksaryte.

  3. Muy ilustrativo tu post. Ahora entiendo más como es la estructura de mi sistema operativo, aunque, eso si, en poco tiempo, jubilarán a xorg para pasar a Wayland o Mir en el caso de Ubuntu.

    En general tu blog me gusta mucho y ya te tengo en mis blogs que sigo. Gracias por hacer este espacio.

    Saludos desde México!!!

    • Muchas gracias por tus palabras Janik, me alegra enormemente que hayas encontrado interesante este humilde espacio y para mi es todo un honor que me sigas… Ya sabes, eres siempre bienvenido, un abrazo desde Costa Rica.

  4. Habría que agregar que hay excepciones en cuanto a que lo gráfico no define a una distribución, tal y como es el caso de KaOS y Chakra.
    Buen post.
    Saludos.

Tu comentario es importante para mi.

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s