O que é o X11 exatamente?

14

Estou lendo a Wikipedia sobre o X11 e ele diz que:

Em sua distribuição padrão, é uma solução completa, embora simples, de exibição e interface que fornece um kit de ferramentas e uma pilha de protocolos padrão para a criação de interfaces gráficas de usuário na maioria dos sistemas operacionais do tipo Unix ...

Mas depois diz que:

O X define principalmente primitivas de protocolo e gráficos - ele deliberadamente não contém especificações para o design da interface do usuário do aplicativo, como estilos de botão, menu ou barra de título da janela.

Então, o X11 fornece widgets como um botão ou um painel / quadro de janela, etc. ou não? O que é um primitivo gráfico? O que o X11 fornece exatamente?

Também é afirmado que:

X não exige a interface do usuário; programas clientes individuais lidam com isso. Os programas podem usar as habilidades gráficas do X sem interface do usuário.

O que isto significa?

Escondido
fonte
4
Acho que você provavelmente deveria ir para a página de conversa correspondente a essa página na Wikipedia e iniciar uma conversa com os autores para esclarecer o artigo.
RealSkeptic

Respostas:

18

Como muitas palavras, "X11" pode ter vários significados.

"X11" é, estritamente falando, um protocolo de comunicação. Nas frases "X define principalmente primitivas de protocolo e gráficos ..." e "X não exige a interface do usuário ...", é a isso que X se refere. X é uma família de protocolos, X11 é a 11ª versão e a única em uso nos últimos 25 anos.

A primeira frase da sua pergunta refere-se a uma distribuição de software que é a implementação de referência do protocolo X11. O nome completo desta distribuição de software é "o Sistema X Window". Essa distribuição inclui programas que atuam como servidores no protocolo X11, programas que atuam como clientes no protocolo X11, bibliotecas de códigos que contêm código que faz uso do protocolo X11, documentação associada, recursos como fontes e layouts de teclado que podem ser usados com os programas e bibliotecas mencionados acima, etc. Historicamente , essa distribuição de software era feita pelo MIT; hoje é mantido pela Fundação X.Org .

O protocolo X11 permite que os aplicativos criem objetos como janelas e usem primitivas básicas de desenho (por exemplo, preencha um retângulo, exiba algum texto). Widgets como botões, menus etc. são criados por bibliotecas clientes. O sistema X Window inclui uma biblioteca básica (o conjunto de widgets Athena ), mas a maioria dos aplicativos usa bibliotecas mais sofisticadas, como GTK + , Qt , Motif , etc.

Alguns programas X11 não possuem uma interface gráfica de usuário, por exemplo, ferramentas de linha de comando como xset , xsel e xdotool , programas de ligação de teclas como xbindkeys , etc. A maioria dos programas X11 tem, obviamente, uma GUI.

Gilles 'SO- parar de ser mau'
fonte
2

O X11, também conhecido como X.org Foundation Windowing, é basicamente usado por outros ambientes de área de trabalho, como o KDE e o GNOME, entre muitos outros, para fornecer a interface abstrata para gerenciar uma GUI. Sem confiar no X, o KDE / GNOME / outros teria que escrever o código para fazer as coisas de codificação de baixo nível. Em vez disso, o KDE / GNOME se comunica com o X (ele roda como um processo do servidor ao qual os 'clientes' se conectam).

crajun
fonte
2
Também esta ajuda explicá-lo, bem como fornecer algumas dicas sobre por que Wayland e outras substituições X estão sendo construídas: art.net/~hopkins/Don/unix-haters/x-windows/disaster.html
crajun
Isso é um discurso retórico.
Stefan Skoglund
E também de outra maneira explica a caracterização de Ken Olsen do UNIX como produtos de mascate de óleo de cobra, mas esse é o capitalismo! A alegação é de que o design para o MOTIF é executado em todos os lugares, hoje em dia é mais parecido com o design do MS Windows e é executado em todos os lugares (isso é um monopólio, não um mercado). Ken Olsen sabia muito bem que o design para o MOTIF e o run-on-everything não estão presentes. o interesse dos produtores - portanto, isso realmente não acontecerá.
Stefan Skoglund
1

Alguns conceitos:
- X Windows System Windowsing system. (possibilita mover janelas no dispositivo de exibição e interagir com mouse e teclado)
- X.Org Server Implementação de código aberto do X Windows System da X.Org Foundation.
- emulador de terminal xterm para o sistema X Windows.
- Cliente X : um aplicativo é executado em um servidor X. O sistema X windows requer que os clientes e o servidor operem separadamente. Aplicativos, como QT, GTK e outros clientes X, precisam da cooperação do servidor X para funcionar com sucesso.

Anteriormente, também me sinto muito confuso com esse problema. Inicialmente, instalei o sistema linux de lado com o windows, por muitas vezes encontrei problemas com erros do Xorg.
Recentemente, eu uso xclipno servidor remoto. O software precisa de uma variável de ambiente DISPLAYa ser definida, o que não é o caso no meu servidor remoto. Não há monitor, mouse ou teclado, e a variável é gerenciada pelo servidor X.

Qinsheng Zhang
fonte
0

O sistema de janelas X11 tinha suporte (com suporte especial do fabricante) para um número razoável de construções / projetos bastante complicados.

O uso do DisplayPostscript no NeWS (Sun / Sony) significava que o servidor tinha um suporte PostScript completo e bastante agradável (Display) embutido. Esse suporte foi empregado remotamente pelo aplicativo, por exemplo, um programa em execução em um x-mp cray poderia as mesmas restrições / interface / habilidades exibem uma carta sísmica no computador da mesma maneira como se a mesma carta estivesse sendo impressa em uma impressora / copiadora a laser de ponta.

Stefan Skoglund
fonte