Por que o X.Org não é multi-threaded? [fechadas]

1

Eu li aqui (1) que o X.Org não é multithread. Citando:

Certain applications running intensive graphical operations can easily freeze your desktop (a simple easily reproducible example: run Adobe Photoshop 7.0 under Wine, open a big enough image and apply a sophisticated filter - see your graphical session die completely until Photoshop finishes its operation).

Eu tenho esse problema com muita frequência no meu PC. No Windows (desculpe fazer a comparação) isso não acontece com tanta freqüência. A GUI permanece um pouco responsiva mesmo durante cálculos intensivos.

Por que o X.Org foi projetado dessa maneira?

Existe algum plano para resolver este problema no futuro (talvez com alternativas como Wayland, Mir, etc.)?

Atualmente existe um desktop Linux alternativo que, pelo menos parcialmente, supera esse problema?

  1. link
por becko 09.03.2016 / 07:51

1 resposta

2

Possivelmente uma questão relacionada: "É qualquer parte do software X.org multithreaded? "

Cite uma das respostas:

no livro de E. S. Raymond, o autor cita.

The X server, able to execute literally millions of ops/second, is not threaded; it uses a poll/select loop. Various efforts to make a multithreaded implementation have come to no good result. The costs of locking and unlocking get too high for something as performance-sensitive as graphics servers. -- Jim Gettys

Pelo que entendi, o lado do cliente pode ser multitheaded, só depende de implementações. E o mesmo se aplica ao wayland, os clientes podem ser multi-threaded, a partir de 01.org :

The client side library is designed to integrate well into toolkit event loops and work in both single-threaded and multi-threaded environments.

    
por 09.03.2016 / 09:53

Tags