X Windows System: após +40 anos de vida, ele ainda é… relevante!

Há muitos anos, quando tive os meus primeiros contatos com os sistemas GNU/Linux, um dos mais “temerários” desafios que precisei enfrentar foi configurar o subsistema gráfico, através de um utilitário do servidor XFree86. Apesar deste utilitário facilitar a definição dos parâmetros relacionados a placa de vídeo e do monitor CRT através de um passo-a-passo, qualquer erro relacionado a digitação dos parâmetros de varredura do monitor, poderia danificá-lo! Mas com o passar dos anos, as rotinas de auto-detecção foram sendo aperfeiçoadas e hoje em dia, sequer precisamos se preocupar com estes detalhes…

“X Window System, which turned 40 years old earlier this week, was something you had to know how to use to work with space-facing instruments back in the early 1980s, when VT100s, VAX-11/750s, and Sun Microsystems boxes would share space at college computer labs. As the member of the AstroPhysical Sciences Department at Princeton who knew the most about computers back then, it fell to Lupton to fix things and take questions.”

— by Ars Technica.

Isto, numa época em que os sistemas já promoviam uma boa usabilidade (o suficiente para utilizá-lo em uma estação de trabalho)! Então, como seria lidar com o subsistema gráfico numa época em que a computação pessoal ainda estava “engatinhando”? Kevin Purdy (editor do portal Ars Technica) publicou um artigo bem interessante, sobre os primórdios do subsistema gráfico X Windows System no início dos anos 80. Graças a uma antiga documentação que ele havia encontrado no departamento de Astrofísica da Universidade de Princeton, ele descobriu um guia introdutório escrito por Robert Lupton, nerd de plantão professor de Astrofísica.

A partir daí, ele realizou uma entrevista com o acadêmico em questão e obteve algumas histórias bem interessantes sobre o desenvolvimento daquele que seria, o futuro subsistema gráfico X Windows System. Como parte dos objetivos do Projeto Athena (de “prover uma interface gráfica para os recursos computacionais distribuídos”), o X se tornou flexível e versátil ao prover todos os recursos necessários para que as estações locais possam acessar (via interface gráfica) os recursos oferecidos por outras máquinas (servidores) na infraestrutura dos seus laboratórios. E assim, nasceu o servidor gráfico X11 e a sua arquitetura, que por sua vez é dividida em três grandes partes: o servidor, os clientes e o gestor de janelas.

Infelizmente, o X11 não envelheceu muito bem por conta da sua concepção antiquada e da falta de integração com as tecnologias gráficas mais modernas. A implementação livre XFree86 foi deixada de lado em vista dos problemas relacionados a mudança de licença de software (a nova licença era incompatível com os termos da GNU GPL). Em seu lugar, foi adotado o X.org para resolver as pendências legais e dar continuidade ao seu desenvolvimento, mas foi deixado de lado em prol do moderno Wayland, por manter a mesma arquitetura atrasada! Ainda assim, alguns problemas de incompatibilidade com as aplicações e serviços disponíveis, acabaram mantendo o X.org como uma espécie de “plano B”.

Bons tempos? Talvez. Mas com certeza, não esqueceremos estas histórias… &;-D