On Wed, 2004-10-06 at 16:38 +1000, Steffen Kluge wrote:
On Tue, 2004-10-05 at 15:15 -0400, Owen Taylor wrote:
> Well, the biggest problem with backing store is that it is per-window
> not per *toplevel* window. In X, toplevel windows can have subwindows
Hmm, interesting. It seems, though, that the X11 forefathers have
thought of that, to a degree. There used to be (still are?) the
"WhenMapped" and "WhenUseful" backing store attributes. There still
seems to be the -wm server switch, turning on "WhenMapped" for all
windows.
This doesn't really help - you want to backing store the *visible*
portions of subwindows, what you don't want to do is to backing
store portions of subwindows that are obscured by other subwindows.
> In certain circumstances, X can end up storing huge amounts of
entirely
> useless pixel data for subwindows because it mistakes them for
> obscured toplevels.
How much of an issue is this? I vaguely remember reading once that
backing store uses off-screen frame buffer memory (there should be
plenty of that on a 128MB graphics card running at 1280x1024). Does
backing store actually affect the X server memory footprint? Then again,
doesn't the reported memory footprint of the X server contain all the
mapped in frame buffer memory as well? The more I think about it the
more I realise my utter ignorance in all of this...
Imagine a 10,000 item list that is 150,000 pixels by 1000 pixels -
e.g., 450 megs of memory.
Under some circumstances, the X backing store code can be fooled into
backing storing the *entire list*.
Regards,
Owen