Fink

Executando o X11 - 1. Introdução

1.1 O que é o X11?

O Sistema de Janelas X (X Window System) Versão 11, ou simplesmente X11, é um sistema de exibição de gráficos com uma arquitetura cliente-servidor transparente em relação à rede. Ele permite que aplicativos desenhem pixels, linhas, textos, imagens etc em seu monitor. O X11 vem também c om bibliotecas adicionais que permite que os aplicativos desenhem interfaces facilmente, isto é, botões, campos para entrada de texto e assim por diante.

O X11 é o padrão de facto para sistemas gráficos no mundo Unix. Ele faz parte do Linux, dos *BSDs e a maior parte dos sistemas Unix comerciais. Ambientes de área de trabalho como CDE, KDE e GNOME rodam em cima dele.

1.2 O que é o Mac OS X?

O Mac OS X é um sistema operacional produzido pela Apple. Da mesma forma que seus predecessores NeXTStep e OpenStep, ele é baseado em BSD e é portando um membro da família de sistemas operacionais Unix. Entretanto, ele vem com um sistema de exibição de gráficos proprietário. O mecanismo gráfico é chamado Quartz e sua aparência visual é chamada Aqua, ainda que os dois nomes sejam frequentemente usados de forma intercambiável.

1.3 O que é o Darwin?

O Darwin é basicamente uma versão reduzida do Mac OS X que está disponível de forma gratuita e com o código fonte completo. Ele não contém Quartz, Aqua ou qualquer outra tecnologia relacionada. Por padrão, ele oferece apenas um console texto.

1.4 O que é o XFree86?

O XFree86 é uma implementação de código aberto do X11. Ele foi inicialmente desenvolvido para rodar em PCs Intel x86, por isso seu nome. Hoje em dia, ele roda em várias arquiteturas e sistemas operacionais, incluindo OS/2, Darwin, Mac OS X e Windows.

1.5 O que é o Xtools?

O Xtools é um produto da X Tenon Intersystems. É uma versão do X11 para Mac OS X baseada no XFree86.

Observação: O desenvolvimento aparentemente foi interrompido antes de o OS 10.3 ser lançado.

1.6 Cliente e servidor

O X11 tem uma arquitetura cliente-servidor. Há um programa central que faz o desenho em si e coordena o acesso por vários aplicativos; este é o servidor. Um aplicativo que queira desenhar usando o X11 conecta-se ao servidor e lhe diz o que desenhar. Portanto, aplicativos são denominados clientes no mundo X11.

O X11 permite que o servidor e os clientes estejam em máquinas diferentes, o que geralmente resulta em confusão sobre os termos. Em um ambiente com estações de trabalho e servidores, você executará o servidor de exibição do X11 em uma estação de trabalho e os aplicativos (clientes X11) na máquina servidora. Portanto, quando se fala sobre o "servidor", isto significa o programa servidor de exibição do X11 e não a máquina escondida no seu armário.

1.7 O que significa sem raiz (rootless)?

Um pouco de história: o X11 modela a tela como sendo uma hierarquia de janelas contidas umas nas outras. No topo da hierarquia está uma janela especial que possui o tamanho da tela e contém todas as outras janelas. Esta janela contém o fundo da área de trabalho é denominada "janela raiz".

Voltando ao assunto: como qualquer ambiente gráfico, o X11 foi escrito para estar sozinho e ter controle completo da tela. No Mac OS X, o Quartz já está governando a tela, portanto é necessário fazer ajustes para que ambos coexistam.

Uma configuração é permitir que ambos se alternem. Cada ambiente recebe uma tela completa mas apenas um deles está visível em um dado instante de tempo e o usuário pode trocar entre eles. Este modo é denominado tela cheia (full-screen) ou com raiz (rooted). Ele é denominado com raiz porque há uma janela raiz perfeitamente normal na tela do X11 e que funciona como em outros sistemas.

Outra configuração é misturar os dois ambientes janela por janela. Isto elimina a necessidade de alternar entre duas telas. Isto também elimina a janela raiz do X11 porque o Quartz já toma conta do fundo da área de trabalho. Uma vez que não há uma janela raiz (visível), este modo é denominado sem raiz (rootless). É a forma mais confortável de usar o X11 no Mac OS X.

1.8 O que é um gerenciador de janelas?

Na maior parte dos ambientes gráficos, a aparência das bordas de uma janela (barra de título, botão de fechar etc) é definida pelo sistema. No X11 é diferente. Com o X11, as bordas da janela (também chamadas decoração) são fornecidas por um programa separado denominado gerenciador de janelas. Sob vários aspectos, o gerenciador de janelas é apenas outro aplicativo cliente; ele é iniciado da mesma forma e conversa com o servidor X através dos mesmos canais.

Há um grande número de gerenciadores de janelas diferentes para escolher. O site xwinman.org possui uma lista abrangente. Os mais populares permitem que o usuário ajuste a aparência das janelas através de temas. Vários gerenciadores de janelas fornecem também funcionalidades adicionais, como menus pop-up na janela raiz e barras de ícones.

Muitos gerenciadores de janelas foram empacotados no Fink. Aqui está uma lista atualizada.

1.9 O que são Quartz/Aqua, Gnome e KDE?

São gerenciadores de área de trabalho, e há vários outros. Seu propósito é fornecer um suporte adicional a aplicativos tal que sua aparência, forma de interação e comportamento sejam visualmente consistentes. Por exemplo,

Os limites entre o sistema de exibição gráfica, gerenciador de janelas e de área de trabalho não são muito delimitados porque às vezes uma certa funcionalidade, ou uma funcionalidade similar, pode ser implementada por mais de um deles. Esta é a razão pela qual um gerenciador de janelas em particular pode não poder ser usado com um determinado ambiente de área de trabalho.

Muitos aplicativos são desenvolvidos para serem integrados a uma área de trabalho em particular. De forma geral, instalando as bibliotecas desses ambientes de área de trabalho (e outras bibliotecas subjacentes) para o qual um aplicativo foi desenvolvido, o aplicativo funcionará sem perda de funcionalidade. Como exemplo, a grande quantidade de aplicativos GNOME que podem ser instalados e executados sem rodar o GNOME em si. Infelizmente, ainda não se chegou ao mesmo ponto em relação aos aplicativos KDE.

Próximo: 2. História