Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!decwrl!jumbo!jg From: jg@jumbo.dec.com (Jim Gettys) Newsgroups: comp.windows.x Subject: Re: A Thought on X Terminals Message-ID: <13601@jumbo.dec.com> Date: 27 Feb 89 20:50:27 GMT References: <8902271538.AA07299@devnull.sun.com> Reply-To: jg@jumbo.UUCP (Jim Gettys) Organization: DEC Systems Research Center, Palo Alto Lines: 60 In article <8902271538.AA07299@devnull.sun.com> dshr@SUN.COM (David Rosenthal) writes: >Or at least, nearly right. What I am pointing out is a fact of the >X protocol that makes the way that we currently write X clients unsafe, >in the sense that they may randomly crash through no fault of their own. >They are more likely to do so in an X terminal environment than in a >workstation environment - this is a practical not a fundamental difference >between the two environments, but it does have practical effects for >customers. >Developing a whole new way of writing X clients is hard for both technical >and organizational reasons: > >- The current way has enormous momentum. >- The technical difficulties of recovering from Alloc errors are > enormous - no-one has even a theoretical structure for doing it. > >In the meantime, the only way of dealing with the problem is to avoid it >by providing the server with plenty of room to grow. Plenty of room means >enough room so that Alloc errors never happen given the set of clients >that are normally run, and the set of operator actions normally taken >(remember, selections also take space in the server - what is the biggest >selection you think the user will make?). Given my observations of actual >X servers running actual clients, I believe that "plenty of room" is >at least 6-8meg. I guess I'd better comment on this topic, as one of the two people who started X, and in the position where I have less political hassle for commenting than Bob does, though I don't wish to imply any of the following is anyone's opinion but my own. I generally agree with Dave; the design center of X presumes virtual memory. Even on a terminal, this should not be very hard to provide today, given a high speed network connection. With some work, you can make the X server use around 50% of the resources it generally does to day for windows and GC's. The changes are not very hard, and may appear in a future release from MIT (no promises), but any terminal vendor who fails to implement these changes is is not being responsible to his customers, unless he is very careful to sell terminals only to people with fixed applications. To date, I have not seen a terminal which could truley replace a workstation, though it is certainly possible given the above work being done. In terms of absolute amount of memory used by an X server, I suspect Dave's estimate is high (at least for mono screens), but the problems are very real, and the unpredicatability of the problem is major. So I think X terminals may be useful, I can't say I'm happy with how they'be been implemented, and wonder how much they differ from diskless workstations. There may well be a market window while they make sense, since diskless workstation administration is currently much more hassle than it should be. A minor quibble on history; the problems even existed in V10, but the fact that you could not perform graphics on pixmaps in V10 meant that they were much less used. More importantly, X11 applications are now much more "real" and use the window system much more agressively. Jim Gettys Digital Equipment Corporation Cambridge Research Lab.