Compiz & Linux compositing: how does it fit into the X architecture?

0

Not a really "how to solve stuff" question, but... I was wondering how the modern X architecture works, with compiz & all.

What I know about it:

  • in the beginning, there was the X server, clients connected (presumably on TCP), and then sent messages to the server to instruct it to show windows etc.
  • because this didn't work (at all? or just fast enough?) for OpenGL & 3D acceleration, additional APIs were created for direct rendering (DRI? and, in addition to the X server, what things did the X clients talk to to render stuff and through what interfaces?)
  • and, finally, enter Compiz: X clients end up (somehow) rendering to OpenGL textures, which is then put together to form a fancy-looking screen with translucent windows, and rendered to the screen.

What I'm especially interested in is what components does the system have and how do they connect to each other? Like... if there is a box labelled "compiz" in the system... is it inside the X server? If it's not, how do the rendered images from the apps end up in it? And where does it render to? Is that another X server? Or DRI?

Of course, I'd be equally happy if pointed to some docs capable of clearing up the confusion described above (conditional on they being significantly shorter than book-sized entities).

Latanius

Posted 2012-11-11T05:02:39.137

Reputation: 554

Question was closed 2012-11-11T14:20:08.237

Answers

0

Here is an good article, which can help you.

demas

Posted 2012-11-11T05:02:39.137

Reputation: 128

1

Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference.

– slhck – 2012-11-11T14:19:57.300

nevertheless, this is what I was looking for, thanks! – Latanius – 2012-11-12T21:25:21.693