Re: Some perspective from the cheap seats...
Havoc Pennington <[email protected]>
| Newsgroups | gmane.comp.xfree86.forum |
|---|---|
| Message-ID | <[email protected]> |
On Thu, Mar 20, 2003 at 07:10:07PM -0800, Kendall Bennett wrote: > > On The Future Of X > > ------------------ > > A number of people has questioned the relevence of X in general. To be > > perfectly honest, I'm one of them. I've even pissed off Keith and many > > others on the Core Team by pointing out that X is obsolescent. I've been > > working in the Windows world for years now, and client-server display > > systems are utterly irrelvent to the majority of real-world computer users. > > X needs to be replaced by a direct-rendered model, on which a > > backwards-compatible X server can be reasonably trivially implemented. > > Yes, I agree entirely with that. Network transparency is nice sometimes, > but not really essential for the day to day use of desktop computing. The > first step IMHO is to simply implement a 2D direct rendering system to > increase performance. Whether X needs to go or whether it can be > reinvented to support 2D direct rendering is a different question. > I don't get this at all. In real life, I am not seeing the UNIX domain socket between the X server and the app as a performance bottleneck. A UNIX domain socket is little more than a single memcpy(), it's not the same as an Internet connection. According to profiling tools, the main performance sinks in GTK+ and GNOME right now are e.g. scaling images and doing text layout (both client side). Direct rendering doesn't help with either one. We can already blast pixels to the screen at a more than satisfactory rate. The well-defined protocol between apps and the windowing server is nice, in the same way COM is better than shared libs. It improves encapsulation and robustness. X has some problems sure, but nothing some extensions and client libs can't fix. RENDER, fontconfig, etc. are examples of that. We've often worked on specific areas where the desktop feels "clunky" compared to Windows XP or OS X, and typically it's about things like tearing, flicker, and not doing smooth animations, rather than raw speed. Extensions focused on these kind of issues would be valuable, but lots of the work to address them is on the client side. Havoc