Recentemente, estou estudando Xlib e tenho uma pergunta: Quais chamadas de sistema (API's) o X.Org Server usa para realizar o ambiente GUI.
Em termos de saída, as chamadas do sistema nos permitem desenhar janelas (ou seja, certos retângulos com cores) em uma tela. E em termos de entrada, quais chamadas de sistema nos permitem obter informações de entrada de teclado e mouse.
Podemos desenhar janelas sem a ajuda do X.Org Server? Claro, não é prático. Mas estou ansioso para saber se é possível ou não.
Soquetes de rede/domínio para comunicação entre o servidor X e os clientes X.
O que quer que o driver de hardware precise para controlar o hardware: No início do Linux, isso era principalmente E/S e portas mapeadas na memória, agora são principalmente drivers de kernel com sua própria API.
Não há chamada de sistema para isso.
X ainda tem drivers de baixo nível para isso, mas hoje basicamente tudo usa o
evdev
driver, que se conecta à camada de entrada do kernel .Sim, com o driver framebuffer . Basicamente você tem um dispositivo
/dev/fb0
que pode sermmap
editado para representar o framebuffer, com algunsioctl
para selecionar o modo de vídeo etc.É muito prático, muitos sistemas Linux embarcados o utilizam.
Apenas um adendo à excelente resposta do dirkt:
Todos os cerca de 14 anos de existência do Wayland gostariam de lembrá-lo que, agora, não usar X deveria ser a norma, não a exceção. (Não é, devido à falta de suporte. Se for preciso uma pandemia para perceber que o compartilhamento de tela não é um recurso agradável de se ter no futuro, então Wayland pode não ter sido tão maduro quanto se pensava ultimamente.)