X Window, Controladores de Janelas e Ambientes Desktop

Tenho percebido uma certa confusão com relação ao Xorg. O que é normal, considerando a diferença de paradigma entre a exibição gráfica usada no Linux e o Windows. Venho neste artigo tentar explicar o funcionamento do X e sua relação com os Controladores de Janelas e ambientes Desktop, como o GNOME e o KDE.

[ Hits: 34.914 ]

Por: Geraldo José Ferreira Chagas Júnior em 28/05/2008 | Blog: http://prginfo.blogspot.com


Entendendo o X



Antes de continuarmos vamos analisar a estrutura típica do Linux.



Cada camada recebe solicitações da camada superior e faz suas solicitações as camadas inferiores. Contudo as camadas não são obrigadas a fazer solicitações as camadas imediatamente inferiores, as solicitações podem pular camadas e fazer solicitações a camadas ainda mais abaixas. As camadas inferiores, assim, não tem consciência de quem está acima. Acima de tudo está o usuário que ao interagir com as aplicações não precisam saber se estão manipulando o Kernel, ferramentas, ambiente gráfico ou seja lá o que venham a inventar.

Esse tipo de estrutura é bem flexível, pois, podemos trocar qualquer componente de uma camada por outro compatível que continua tudo a funcionar normalmente. Lembrando que o padrão seguido pelos Linux POSIX, que estabelece compatibilidade em nível de código fonte, e recompilações seriam necessárias, possivelmente em outras camadas além da que estivesse sendo substituída. Isso é exatamente o que chamamos de arquitetura modular.

A vantagem desse tipo de arquitetura é exemplificado com o caso do servidor XFree86, que devido à uma mudança no licenciamento e outros problemas, já citados, fizeram com que a maioria dos desenvolvedores saíssem do projeto com o código anterior a mudança da licença e criassem o X.Org, gerido pela X.Org. Hoje em dia X.Org avança muito mais rápido que o XFree86 e é o padrão da maioria das distribuições, enquanto isso o XFree86 agoniza lentamente. A substituição não foi tecnicamente problemática pois os clientes continuavam fazendo suas solicitações via o protocolo X11.

O funcionamento do X

Como já mencionado, no X o servidor e cliente se comunicam via protocolo X11. O servidor desenha as informações no exibidor e repassam as informações recolhidas, como clique do mouse, ao cliente. Este por sua vez processa as informações recebidas e requisita ao servidor para que o resultado seja mostrado no exibidor. Veja a estrutura:



Com isso podemos:

Executar o X11 via SSH:

$ ssh [email protected] -X

Usando o parâmetro X no ssh habilitamos o modo X11 porém por uma solicitação criptografada.

Multihead:

O Incrível Computador de Duas Cabeças.

Com dois ou mais monitores e placas de vídeo, na quantidade certa, podemos ter o resultado de uma aplicação executada em um cliente X mostrada de forma "configurável" em todos os monitores. Esse recurso é conhecido como Xinerama.

Múltiplos Servidores X:

Podemos rodar mais de um servidor X na mesma máquina. Essa forma é facilmente observada nas distribuições mais novas quando fazemos uso da opção "Logar como outro usuário". Neste caso, um novo servidor X é executado e sem deslogar o anterior ficando possível alternar entre os servidores.

Podemos ainda ter servidores X dentro de outro servidor X, é o que se chama servidor aninhado.

Página anterior     Próxima página

Páginas do artigo
   1. O que é o X ?
   2. A evolução do X
   3. Entendendo o X
   4. Controladores de janelas x Ambiente desktop
   5. Brincado com as camadas
Outros artigos deste autor

Configurando Servidor de Nomes - DNS (Debian)

Linvox - Sistema Linux voltado para deficientes visuais

Vírus de computador e criação de um vírus em C/C++ (parte 1 - básico)

Montando um ambiente utilizando Tomcat + Java + MySQL (Debian)

Instalando e configurando o aMule (Debian)

Leitura recomendada

Fazendo backup e recuperando a MBR e tabela de partições do HD

Variáveis padrão para usar em seus scripts em shell

Resumo do documentário Revolution OS

Referência de aplicativos para quem está começando no mundo GNU/Linux

Uma introdução ao shell (parte 1)

  
Comentários
[1] Comentário enviado por tekmania em 28/05/2008 - 18:42h

Eu tava fazendo um artigo sobre isso, mas seu ta muito bom. ^^
Nota 10

[2] Comentário enviado por iamunhoz em 28/05/2008 - 19:18h

Realmente, nota 10 este artigo. Muito bom mesmo, agora consegui entender onde entra compiz, beryl e openbox nesta história toda :D

Alías, teria sido legal se você tivesse mencionado estes Gerenciadores de Janelas no teu artigo. Mas isto é detalhe, teu artigo tá realmente 10!

[3] Comentário enviado por fulllinux em 28/05/2008 - 22:21h

Ultimamente só vem aparecendo artigos de grande categoria aki no VOL... para seguir a regra mais um 10 para vc =}

[4] Comentário enviado por gjr_rj em 28/05/2008 - 23:17h

Respondendo ao comentário. Pensei em trabalhar a parte 3D, porém, falei sobre usuários Hardcore no artigo. Eu sou +-. Minha máquina é modesta. É engraçado, pois, o da minha mulher é moderníssima. A minha não tem aceleração 3D, e como tudo que escrevo é testado, não poderia escrever sobre isso.

[5] Comentário enviado por removido em 29/05/2008 - 01:16h

sinceramente está muito legal ..........

[6] Comentário enviado por albfneto em 29/05/2008 - 03:13h

Que artigo legal! Vou cita-lo num artigo de História do Linux que estou preparando

[7] Comentário enviado por anoob em 29/05/2008 - 09:13h

Cara, parabéns! Pela primeira vez entendi o que cada um deles faz. Obrigado pelo artigo. Abraços.

Uso Debian Lenny e quando mato o Metacity ele automáticamente inicia novamente, acredito que é alguma configuração do Gnome. Ou seja. Não consigo rodar apenas o Gnome, sem o Metacity.

[8] Comentário enviado por leandroseverino em 29/05/2008 - 09:58h

?comentario= Muito bom, muito bom mesmo, meus sinceros parabéns.

[9] Comentário enviado por brenogalvao em 29/05/2008 - 11:45h

Porra! Muito bom mesmo!
Era algo que eu precisava saber.
Parabéns mesmo.

[10] Comentário enviado por nicolo em 29/05/2008 - 12:30h

Digamos..... Maravilhoso... eu descobri que não sei nada mesmo.
Que tal um roteiro para dummy guys?

[11] Comentário enviado por hebaja em 29/05/2008 - 13:23h

Já adicionei aos meus favoritos para futuras consultas.
Meus parabéns, este artigo foi bastante esclarecedor. Eu já tinha uma vaga idéia de como essas coisas funcionavam mas nunca tinha procurado saber mais.... muito bom mesmo!

[12] Comentário enviado por f_Candido em 30/05/2008 - 12:48h

Muito bom. Bem explicativo. Parabéns.


Abraços

[13] Comentário enviado por GilsonDeElt em 30/05/2008 - 16:26h

Cara, d+ seu artigo!

Aprendi nele o que são os conceitos de ambiente desktop, gerenciador de janela e servidor X (destes últimos eu já tinha uma idéia melhor, que o artigo complementou), e de quebra finalmente entendi a diferença entre o XOrg e o XFree86.


[14] Comentário enviado por mslinux em 30/05/2008 - 21:15h

Gostaria de ver a criatividade e não apenas o copiar e colar.

[15] Comentário enviado por gjr_rj em 31/05/2008 - 00:13h

copiar e colar !?
rsrsrsrs

Meu micro levou mais de uma semana fazendo essa simples operação.

Levei muito mais tempo procurando material para entender o funcionamento dessa combinação X, GJ, AD, pois se encontra muito como configurá-los (por isso nem toquei no assunto, não falta material sobre isso na net). Quando achei o material (sites e livro), testei e aprendi. A primeira coisa que fiz foi por em meus links. Como sei que é muito difícil alguém visitar os links, resolvi escrever o artigo. aproveitando a parte boa, melhorando o que achei não estar bom e incluindo informações que achei faltar.

Abraço !

[16] Comentário enviado por M4iir1c10 em 31/05/2008 - 10:08h

Muito legal... agora uma duvida...
e possivel eu me conectar com uma maquina remotamente e executar o X com as aplicacoes da maquina remota no meu computador?

Se sim, como eu faco isso?

[17] Comentário enviado por paulo.neto em 31/05/2008 - 13:34h

mauriciomlmph

veja este artigo pode te ajudar.

http://imasters.uol.com.br/artigo/4211/linux/configurando_o_servidor_x_para_ser_acessado_remotamente...

[18] Comentário enviado por thelinux em 31/05/2008 - 20:16h

Artigo bem interessante.

Parabéns pela didática e o compromisso em compartilhar seus conhecimentos. Muitas pessoas aqui no VOL gostam muito de criticar os outros que escrevem.

Está no meus favoritos.


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts