
"Maybe I'm just naive, but designing a graphics API such that all image data had to be sent over a socket to another process every time the image needed to be drawn seems like complete idiocy. Unfortunately, that is precisely what the X Window System forces a program to do, and exactly what Cairo does when drawing images in Linux - a full copy of the image data, send to another process, no less, every time it is drawn. One would think there would be some room for improvement. Unsurprisingly, others felt the same way about X, and decided to write
an extension, Xlib Shm or XShm for short, that allows images to placed in a shared memory segment from which the X server reads which allows the program to avoid the memory copy. GTK already makes use of the XShm extension, and it seems like a good idea to see
if Gecko couldn't do the same."
Member since:
2006-03-13
The article wasn't bashing X, it was (politely) criticizing Cairo for not using a feature of X (SHM) which could result in an overall performance increase of about 20%, as proved by tests done by the author when he went and patched Cairo to actually USE said feature.
The article was about "Cairo doesn't use X as well as it could, here's how to fix it and what effect fixing it has" NOT "ZOMG X Suxx!"
Edited 2008-06-29 15:06 UTC