Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!sdd.hp.com!spool.mu.edu!uunet!mcsun!ukc!tcdcs!bofin!cjmchale From: cjmchale@cs.tcd.ie (Ciaran McHale) Newsgroups: comp.windows.x Subject: Re: PC X servers / backing store Message-ID: <1991Mar5.165633.17593@cs.tcd.ie> Date: 5 Mar 91 16:56:33 GMT References: <9103032356.AA00215@devnull.Eng.Sun.COM> <952@boing.UUCP> Organization: DSG, Dept. of Comp. Sci., Trinity College, Dublin. Lines: 44 In <952@boing.UUCP> dale@boing.UUCP (Dale Luck) writes: >In article <9103032356.AA00215@devnull.Eng.Sun.COM> >dshr@eng.sun.COM (David Rosenthal) writes: > >>This is a very important point to understand. If we had been prepared to >>*require* the server to maintain backing store for windows and to make >>a number of other similar decisions during the design of X, we would have >>ended up with a completely different design which would have >>been faster and simpler but which would have consumed much more resource. >>It would, for example, have been improbable that an X-terminal or a >>PC X-server would have been a viable product had we taken this route. > >I couldn't agree with you less on this last statement. Case in point: >The Amiga guarentees backing store with it's SMART_REFRESH windows. >The programmer is able to choose whether they can handle expose >events or not. SIMPLE_REFRESH windows always generate expose events >whenever it is uncovered. SMART_REFRESH windows do not. >If the Amiga was able to do this in a 16k layer library and a 64k >graphics library (nearly all written in C) then it could be done >in the X Window system as well. The problem isn't in writing code to support the unconditionaly maintainence of backing store; the problem is that you can't be sure the X server has enough main memory to do so. I don't know much about the Amiga but in the X window system a window can be quite large: 2^16 wide by 2^16 high. (that's 2^9 Megabytes for a mono window if my maths is correct.) I don't think it is reasonable to expect an X server to maintain backing store for windows that big. I would imagine that the Amiga either (i) puts an upper limit on how big a SMART_REFRESH window can be, or (ii) runs out of memory for large SMART_RESFRESH windows. X *could* have done this. But it didn't because the designers thought that it might be a bit limiting. Ciaran. -- Ciaran McHale "Verbosity says it all" ____ Department of Computer Science, Trinity College, Dublin 2, Ireland. \ / Telephone: +353-1-772941 ext 1538 FAX: +353-1-772204 \/ Telex: 93782 TCD EI email: cjmchale@cs.tcd.ie