Gerenciador de Janelas vs. Ambiente de Trabalho vs. Sistema de Janelas? Qual é a diferença?


23

Estou confuso sobre o que esses termos realmente significam E sobre o que eles fazem / como contribuem para o sistema como um todo. Em particular, quando eu estava executando o Ubuntu, havia várias palavras-chave como:

Gnome 
X11 
Xorg 
Metacity 
GTK+

Qual é exatamente a diferença entre todos esses? O que pode ser alterado? O mesmo se aplica quando falamos sobre o KDE ou o LXDE?

EDIT: Além disso, coisas como o Compiz funcionam em todos os gerenciadores de janelas / janelas / sistemas de desktop?


Já pedi em 2010 no AskUbuntu e pedi alguns meses depois no Unix e Linux . Dividir os cabelos do StackExchange em tantas partes nem sempre faz sentido.
Dan Dascalescu

Respostas:


26

X11 é um protocolo de rede . Ele codifica itens como primitivas gráficas, imagens, movimento do ponteiro e pressionamento de teclas.

Xorg é um servidor X . Ele implementa o X11 e fornece uma interface para teclados, mouses e placas de vídeo.

GTK + é um kit de ferramentas de widget . Ele fornece itens como botões, barras de rolagem, caixas de edição etc.

Metacity e Compiz são gerenciadores de janelas . Eles decoram as primitivas da janela do X e suportam várias operações, como mover, redimensionar e maximizar as janelas.

GNOME, KDE e LXDE são ambientes de desktop . Eles fornecem bibliotecas e especificações que os aplicativos usam e seguem para "jogar bem" com outros aplicativos.


Esta é uma resposta realmente excelente e simples +1. No entanto, o servidor Xorg pode ser alterado ou é um padrão Linux? Além disso, nunca ouvi falar de GTK + ou Metacity em um ambiente KDE - eles são específicos para o Gnome?
n0pe

3
O Xorg é simplesmente uma implementação do X11; por acaso é a implementação FOSS mais popular. O KDE especifica que o Qt é usado como seu kit de ferramentas de widget, portanto, não é possível que um aplicativo KDE use o GTK +, pois ele não será mais um aplicativo KDE. É possível usar o Metacity no KDE (o gerenciador de janelas raramente faz parte da especificação DE, apenas um padrão sensato), mas a maior parte do motivo para as pessoas que usam o KDE em primeiro lugar se deve à sua configurabilidade, e o Metacity é o antítese da configurabilidade.
Ignacio Vazquez-Abrams

Mais uma pergunta e obrigado pela informação até este ponto. Os gerenciadores de janelas desempenham um papel na compatibilidade de tela dupla? Estou prestes a mudar do KDE para uma solução leve (blackbox / openbox, essa área) e fico imaginando se isso afeta telas duplas ou esse tipo de coisa.
n0pe

Eles não deveriam , mas alguns podem fornecer recursos adicionais em situações de vários monitores (encaixe na borda da tela, envio na tela etc.).
Ignacio Vazquez-Abrams

user113907 menciona: "X11 é o sistema de janelas (o que desenha as janelas na tela)". Você menciona: "X11 é um protocolo de rede". Isso pode ser reconciliado?
dotancohen 20/09/14

4

Aqui estão os termos definidos, juntamente com alguns exemplos centrados no Ubuntu.

  • Gerenciador de Janelas: Aceita as solicitações de janelas e as coloca onde precisam ir. Faz coisas como barras de título, menus, etc. Exemplo: Metacity

  • Ambiente de área de trabalho: um superconjunto de gerenciadores de janelas que adiciona itens como painéis, planos de fundo e outras sutilezas. Exemplo: GNOME

  • Sistema de janelas: o software de baixo nível real que permite que coisas como janelas existam em primeiro lugar e as desenha na tela. Exemplo: Xorg

Em geral, você também pode estar interessado em saber que o gerenciador de janelas e o ambiente de área de trabalho são com os quais o usuário interage. Você não toca diretamente (a menos que esteja em um shell de recuperação) no sistema de janelas.

Observe também que essas coisas podem ser modulares para respeitar com as outras. Por exemplo, você pode usar qualquer gerenciador de janelas no Xorg e qualquer ambiente de área de trabalho sobre qualquer gerenciador de janelas.


4

O GNOME é um ambiente de área de trabalho (ele lida com os ícones e painéis da área de trabalho).

Metacity é um dos gerenciadores de janelas do GNOME (mantém as janelas organizadas).

O GTK + é o kit de ferramentas de widgets do GNOME (ele desenha os botões e as caixas de seleção).

X11 é o sistema de janelas (o que desenha as janelas na tela).

O Xorg é uma implementação de código aberto do X11 (geralmente sinônimo de X11).

O Compiz é um gerenciador de janelas e compositor de desktop (um compositor de desktop é um programa que gera efeitos especiais, como um cubo de desktop, na tela).

Você pode executar o Compiz no GNOME, KDE e Unity pelo menos. Basta obter o pacote CCSM inserindo-o no terminal:

$ sudo apt-get install ccsm
$ ccsm

(Não insira o cifrão e o espaço a seguir; isso significa que você não está logado como root.) No CCSM (Compiz Config Settings Manager), ligue e configure os efeitos da área de trabalho que desejar. Seja cuidadoso! Você pode perder as barras de título no GNOME e UNITY. Se isso acontecer, pressione Ctrl-Alt-F1 e digite:

$ top

Procure na coluna PID e anote o número na entrada do xorg. Em seguida, digite:

$ sudo kill pid

A tela de login deve aparecer imediatamente. Faça login novamente e evite cometer o erro cometido na última vez. Desculpe pelo longo discurso.


Ignacio Vazquez-Abrams menciona: "X11 é um protocolo de rede". Você menciona: "X11 é o sistema de janelas (o que desenha as janelas na tela)". Isso pode ser reconciliado?
dotancohen 20/09/14
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.