Slashdot Mirror


The Power of X

An anonymous reader writes "The license changes in the last version of Xfree86 have caused many distributions to reject the project in favor of the forked X.Org X server. As X.Org prepares to release the second version of the X.Org "monolithic" X Server (dubbed version 6.8), Ars Technica investigates the future of the X platform, as cooperation between X.Org and projects like GNOME and KDE begin to take take hold at freedesktop.org. Already host to an impressive array of projects, it appears that freedesktop.org will become the hub in which other Free Desktop projects can collaborate. Daniel Stone, release manager for freedesktop.org, gets into the details on how it's all going to work, in conjunction with freedesktop.org's upcoming platform release."

33 of 410 comments (clear)

  1. who forked from who.. by martin · · Score: 3, Interesting

    I thought Xfree86 was a fork of the original X11 development camp and that X.org is a refounding of the original X11 camp after lots of splits, esp with alot of Xfree86 dev guys getting annoyed and going 'back to their roots' as it where..

    Could be wrong (and frequently am)..

  2. X in Windows? by random_culchie · · Score: 4, Interesting

    What I'd really like to see is some support for X type connections in the next version of windows. I don't mean basing all of windows on X11 but perhaps allow remote windows sessions that are native. Not based on screen redraws like VNC.

    1. Re:X in Windows? by Ancil · · Score: 2, Interesting

      Already happening. Windows' new rendering engine, Avalon, is completely vector-based. Here's what one of its designers had to say:
      Avalon will support remoting at a higher level than DirectX. When remoting we will not rasterize on the server machine but instead we will send higher level graphics instructions to the client machine and then call DirectX on the client machine.

      This will enable us to send less data over the network as well as reducing the server load because all graphics operations will run on the client machine. We also will get higher performance and fidelity rendering and animations because we will not need to round trip data across the network for these operations since they will be retained on the client machine.

      This isn't surprising -- once you have a completely declarative presentation system, remoting becomes a lot easier.
    2. Re:X in Windows? by Ancil · · Score: 2, Interesting

      Indeed I did. Most of the other people responding to the question did not, however.

      The poster wasn't talking about "X Windows under Windows", that's been done by Cygwin and many others. Let's read the original comment again, shall we?

      What I'd really like to see is some support for X type connections in the next version of windows... Not based on screen redraws like VNC
      He's talking here about X-like connections, NOT X Windows. In other words, he'd like to see remote terminals based on drawing primitives. Current Remote Windows are based on screen redraws, as the poster mentioned. This is rather cumbersome, and completely impractical on less-than-stellar connections.
    3. Re:X in Windows? by Chester+K · · Score: 2, Interesting

      What I'd really like to see is some support for X type connections in the next version of windows. I don't mean basing all of windows on X11 but perhaps allow remote windows sessions that are native. Not based on screen redraws like VNC.

      RDP is much closer in implementation and functionality to X than it is to VNC; in that it doesn't send updates to the screen as bitmaps -- it sends font information, strings, window information, and bitmap information for actual UI bitmap objects (i.e., not everything). In fact, it's so tied in with the Windows UI at the lowest levels that for Microsoft to switch to X11 would probably be a step backwards.

      --

      NO CARRIER
  3. KDE and Knome infect X ? by vi+(editor) · · Score: 2, Interesting

    I fear that in the long term windows manager features will included into the X server. The cooperation between X.ORG and the KDE / Gnome teams doesn't bode well.
    Such an integration would destroy the versatility and uniqueness of the X protocoll. Indeed X would degenerate to a remote enabled clone of the Windows desktop after some time.
    Yes, want Linux/BSD on the desktop but not this way.
    This is like getting an elephant into your car by cutting him into pieces.

    1. Re:KDE and Knome infect X ? by evvk · · Score: 2, Interesting

      I must second you here. I fear that, say, ten years from now there will be no easy way to switch to window managers like Ion, ratpoison, larswm, the newer clones of these, and whatever new innovations might happen during that times. WIMP policies will have been so deeply integrated into the basic windowing system. X (which is just a graphical input/output protocol!) and the ICCCM are excellent in that they don't dictate policy too much and thus allow for this kind of experiments and research without the system having to be rewritten from the ground up. Research into new interaction techniques must not be forgotten and WIMP considered the final evolutionary step of GUIs. (Infact, it was just the first step!)

    2. Re:KDE and Knome infect X ? by canavan · · Score: 2, Interesting

      I fear that in the long term windows manager features will included into the X server.

      That's something I'd actually like to happen - the way it was in the NEWS system (just better). In my opinion, it would actually be beneficial to replace the window manager with a script running inside the server, or even to allow application to upload scripts to the server that handle their Menus so that there are no unnecessary delays going back and forth between the X-Server and a remote client for stuff as trivial as moving a window or opening a menu.

  4. Compositing by maharg · · Score: 4, Interesting

    I know I'm going to get flamed by all the 80x24 textmoders out there, but compositing is cool

    --

    $ strings FTP.EXE | grep Copyright
    @(#) Copyright (c) 1983 The Regents of the University of California.
    1. Re:Compositing by gatzke · · Score: 2, Interesting

      It is eye candy, and it is cool, but I still have trouble using it for real work.

      Maybe for some applications (drawing?) it might be ok, but reading web pages and writing code, transparency makes my eyes hurt...

      I remember the first time I saw a neat looking transparent eterm years back. It was very hard to use for any length of time at all, but it is neat to show people.

      Back to my glowing monochromatic lime green vt100 serial terminal for another round of nethack. "Welcome Luddite the evoker!"

    2. Re:Compositing by Smallpond · · Score: 2, Interesting

      Misadvised developments like this are the reason that you need 3GHz processors to run applications that should run on a 486. Please name an application in which compositing gives a better user interface than tabs or just overlapping windows. Compositing makes it difficult to select elements or identify the source for screen objects. The supposed advantage (you can put more stuff on the screen at the same time) seems more like a disadvantage in most cases.

    3. Re:Compositing by jsebrech · · Score: 2, Interesting

      Laugh all you want, but at one point I would occasionally check my email by dialing with my modem-equipped palmpilot into the internet, running a telnet session to my mailserver, and running pine in a shell session.

      Amazingly, it worked just fine, and was perfectly usable.

      On the other hand, VNC from that palmpilot, though I tried it a few times, was just not usable. So I will admit that every once in a while those who claim the shell has better usability do have a point.

  5. What about Y? by Outsider_99 · · Score: 5, Interesting

    With all this talk of X, ive remembered Y-Windows http://www.y-windows.org/ Does anybody know whats happened to Y? According to the road map, version 0.3 should have beed out 4 months ago.

  6. NVidia driver issue? by Lispy · · Score: 3, Interesting

    He avoids answering the question about XFree86 Driver compatibility, especially with regard to NVidias binary drivers. This is a big issue for a lot of users and I hope that NVidias cards will be capable of using the new extensions.

    As far as the article goes all I can read is that they work with both major graphiccards vendors but only ATI delivered so far. Or did I miss something?

  7. Re:Progress by Anonymous Coward · · Score: 5, Interesting

    One of the things that has always bothered me about XFree86 in the past 6 years I have used linux is XFree86's kind of lag in new releases... development seems to move at a snail's pace, and let's be frank, it's almost the same as it was back in the good ol' unix days.

    I for one enjoy X.org and a windowing system that can hopefully be kept up to date and have more active development.

    But my question is... how many more forks will we have?

    James Carr

  8. Time for X11R7 or even X12 by Viol8 · · Score: 5, Interesting

    Its time a load of heads sat down and decided on the features that are required in the next MAJOR release of the X windows system/protocol. None of this piecemeal "we'll add it in as an extension" rubbish thats been happening for the last 10 years as this is becoming unmanageable; "My server has the dbe extension but not open-gl, your server has shapes but not etc etc etc." Just put ALL modern graphics requirements in the base protocol and write new extensions for Xlib and work from there.

    1. Re:Time for X11R7 or even X12 by groomed · · Score: 5, Interesting

      Time and time again, X11 has showed us that it is better to provide mechanism, not dictate policy--even unto the protocol itself.

      Um, X is a textbook example of that philosophy gone horribly wrong.

      To its credit, the X consortium tried to rectify their mistake thru the ICCC, but again they fell into the trap of creating something with so much misguided "flexibility" that it's almost impossible to find any apps which actually implement the ICCC in full, let alone cooperate in any meaningful way.

      The ICCC has been such a joke, that ten years on something as elementary as copy-paste is still a hit-and-miss affair. And what about projects like the CDE, or Enlightenment? Everybody's who been serious about using X to craft a desktop has felt the need to introduce policy above and beyond what X has to offer. That's not a sign of X's flexibility or time-tested design: it's a sign that X sucks.

      Let's hope freedesktop.org manages to beat some shape into the mess that is X, but they'll only succeed if they're willing to provide policy rather than mechanism. Bad policy that's followed by many is much more useful than good policy that's followed by few, or no policy at all.

  9. Re:Progress by Anonymous Coward · · Score: 4, Interesting

    I have not seen real dissatisfaction with the technical side of XFree86 in the last few years.

    Have you been listening?

    (A) There's apparently a ton of longstanding problems with the XFree codebase that are only now being addressed, both in fixing the current codebase and in a longer-term massive redesign/rewrite. The response for years has been "Well, it works..."

    (B) There's been an emormous amount of criticism of X protocol design, going back 20 years. But with the rise of OSS frameworks, this reached a breaking point. The X response has been that the Toolkits serve the Windowing System and "Well, X11 is X11..."; rather than the more sensible attitude that the Windowing System should serve the Toolkits (and user programs). This is probably the biggest philosophical difference giving rise to the XFree fork.

    The licence change was portrayed as a legal issue, but it was really just the final case of the "XFree Guys are Assholes". If the project wasn't already forking, there would have been no legal shit stirred up.

  10. Re:Whose task is copy&paste by KamuSan · · Score: 2, Interesting

    And that's exactly why I bought a Mac.

    Linux to tinker, Mac to use.

    BTW. Windows doesn't really copy/paste well though. Formatted copy in WOrd gives me a headache and Excel doesn't keep to Microsoft's own UI guidelines.

  11. Aspect oriented X server by Anonymous Coward · · Score: 0, Interesting

    The X developers should rewrite the server from scratch using the Aspect Oriented methodology and for example the AspectJ programming language. Many of the X extensions really touch all parts of the server which is exactly the kind of problem aspect oriented programming was designed to solve.

    Using AspectJ, an extension such as the Damage extension could be written in a weekend.

    Also rewriting the server in AspectJ would allow the developers to leverage the full power of the Java language. With Java reflection the core dispatch code in the server could be replaced by just a few lines of code. The RENDER extension could be completely removed from the server and replaced by using the delegate design pattern to forward X requests to Java2D

    The Fresco project had huge potential, but never managed to escape the legacy language C++. It seems everybody working on window system is stuck in the software engineering practices of the seventies.

  12. I'm up to your challenge by hummassa · · Score: 4, Interesting

    Please name an application in which compositing gives a better user interface ...

    I worked in a GIS (geoprocessing) application to an electrical company. In the user's screen, a map showed up with all polls and wires that are in a location. If you clicked on a poll with, e.g., a transformer, a translucent (big) tooltip came up with all of the transformers specs, where the electricity was coming from, where it was going to, etc (like 20 lines of text). Without dismissing such tooltip, the user is capable of clicking in another poll in the map, and only the contents of the tooltip changed, (maybe it's position if it were possible to move "away" from the current part of the map. The user could even click thru the tooltip, in a poll that was showing below it! (there was a menu item/toolbar speed-button and a hot-key to close the tooltip, obviously)

    This kind of interface is *very* practical and would be impossible without translucency. I implemented it in a no-nonsense 15 minutes under BorlandC++/w2k.

    --
    It's better to be the foot on the boot than the face on the pavement. ~~ tkx Kadin2048
  13. I'm using the new X.org by thejuggler · · Score: 4, Interesting

    I just installed Slackware 10.0 and it came with the X.org system. I didn't even know about the change. I happily went into the config file and configed my video card, monitors, screen and all just like I used to with XFree86. After saving I started X like normal and all ran just fine.

    I wasn't until I was reading later on that I realized there was a different X on my machine. Even then I was getting confused because much of Slackwares online docs have not been updated to refect this change.

    I like X. X is good. Some X'es are better!

  14. Re:Prepare to be blown away by Queuetue · · Score: 3, Interesting

    Where do you actually see the new eyecandy? Dropshadows, transparency, etc ... Don't new window managers and applications have to be built to take advantage of them? (I've only read part of the article, so sorry if I missed this answer there.)

  15. Re:Nice Screeny's - with HTML by pyros · · Score: 2, Interesting
  16. Re:unified desktop by Technonotice_Dom · · Score: 3, Interesting



    Here's my take on it:

    I use Linux on my systems (with Gnome as a DE) and I know what you mean some times. Part of the problem is that people write programs for different purposes - e.g. some people will write a program using Qt and the KDE libraries causing the programs to look one way, while somebody else will use Gtk or another toolkit.

    It obviously isn't just down to the toolkit, but also depending on who the application is targetted at, most developers (generalising I know) don't have the time (or don't want to, or don't have lots of experience) to make their application pixel perfect.

    Gnome has some usability guidelines and I think anybody would testify to the fact that Gnome itself and applications based around the HIGs have a very consistent feel. Likewise KDE has some HIGs (currently redrafting I think) but it doesn't have anywhere near the emphasis on the programs in the KDE collection IMO.

    As well as defining the HIGs, part of the problem is to educate interface programmers and try to ask them to follow the guidelines - and more importantly, for people who have experience in usability (and that includes all users) to comment, suggest changes etc.

    An interesting example was on the KDE Usability mailing list the other day - Celeste Paul posted a usability report on KHangman. The coder behind it appeared shortly after and immediately began following the conclusions of the report. I'm sure almost every programmer will be happy to accept constructive criticism for their work.

    If you think a menu item or something isn't right, file a bug report against it - and try to include a suggestion (even if it isn't a complete solution) for how it could be improved. It only takes a few minutes. </rant>

  17. I would love to see CCM for X by richie123 · · Score: 2, Interesting

    the only major problem with x.org I see at the moment is they are adding mostly eye-candy extensions, but things like screen and printer matching are the practical features missing in Windows that could attract a lot of Desktop Publishing and graphics apps to Linux. I think the composite extension is cool, but I would love to see more usefull stuff added.

  18. Not developers, artists! by Anonymous Coward · · Score: 1, Interesting

    Well, the problem isn't so much that free software developers don't care about documentation. It's that technical writers don't get involved so much in free software as developers do. There are similar problems with artwork and music for free software games etc.

    If you want good art, documentation, music, etc., then start complaining to your friends who do art on computers just for kicks. They could be helping a worthwhile cause!

  19. More likely windows comparisons and GPU usage by Anonymous Coward · · Score: 1, Interesting

    I think people are more likely to compare the wealth of slick windows-based apps that wow people with unexpected 3D effects at the drop of a hat. Transparency is interesting, but essentially useless, as most people say, but making 3D easy for APPLICATION developers will really change some things. It may even lead to new, unexpected forms of user interface. THAT's what Free Software has to compete with -- a shifting kind of application; not a shifting graphics capability.

    On another note, I'd like to see GPUs used through a lower-level library than X. There are plenty of intensive computing tasks that can use GPUs, so it'd be nice to have X ask for the GPU, from a system that shares the GPU resources properly, rather than just hijack it.

  20. Re:Hope that compatability is retained by Trelane · · Score: 4, Interesting

    This isn't a problem. All new functionality is done by extension to the old X11. I actually keep arguing that we should standardize an X12 which removes things not used much anymore and which includes (sans extensions) the functionality which is wanted, and provide and X11 interface for compatibility (if you have to make an extension extension because there are so many extensions, you need to move to the next version!). However, they don't want that; they want compatibility (which I don't hold to be orthogonal if things are done right, but I'm not (yet) and X hacker, merely an armchair X pundit. ;)

    Anyhow, rest assured that compatibility is top priority with these changes. You just won't be able to see the shinies. :)

    --

    --
    Given enough personal experience, all stereotypes are shallow.
  21. Re:Progress by FooBarWidget · · Score: 4, Interesting

    Sigh, there we go again...
    First, get this: when you see a problem, there can be a whole bunch of causes. The only way to fix a problem is to correctly identify the cause.

    Which you are not doing here. "X apps seem to be slower so X must be slow" may make sense from a non-technical user point of view, but that doesn't mean it's correct. In fact, it isn't.
    If you benchmark things and stuff, you'll see that the problem is not in X itself: it's in the toolkits. So if people listened to you and ditched X, we'd still have the same problems because the toolkits are still slow.
    Try using something like WindowMaker and some non-GTK non-QT apps. You'll find that they usually respond significantly faster (not on my machine though; Athlon 1.4 Ghz here, I don't find X apps slow).
    And try playing 3D games. Look at the high framerate (assuming you're using a good card and driver, like NVidia + vendor drivers). How's that possible for a windowing system that's slow?
    I've written several testing apps, for Windows and X. On both platforms, I get the same frame rate.

    Expose events: Windows does pretty much the same thing. If I wrote an app that only responds to the paint event once, and I move a window above it, you'll see that the window won't be redrawn. Windows in fact uses the very same expose mechanism.
    X *does* in fact have a feature which allows you to save the content of the window. It's saved Backing Store and Save Under (I think). QT and GTK don't use it except when popping up a menu. Ask the toolkit authors why they don't, because I don't know.

    Data copying: data is *not* copied when transferring pixmaps, which is about 90-95% of the traffic. On localhost, XFree86/XOrg uses shared memory for that.
    On localhost, normal X messages are transferred via unix domain sockets (not TCP sockets), which are almost as fast as shared memory (at least on Linux). Remember, this is small amount of data.
    No modern windowing system allows the app to touch the hardware directly. Not Windows, not MacOS X, not BeOS. In fact, Windows internally uses the same message-based communication system as X. Windows apps don't draw directly to the hardware.

  22. Re:Compositing is just the tip of the iceberg. by caseih · · Score: 2, Interesting

    Actually many normal operations appear much faster with composite on than off. Dragging windows, for example. The other extensions plus the off-screen rendering make X appear to be a lot smoother and faster. I remember running an early beta of xserver (kdrive) with the extensions using only the VESA driver. Without the composite manager on, the system was slow some things were just painful. Turn on the manager and normal operations appeared to be almost an order of magnitude faster. When the synchronization stuff is added into GTK and QT, resizing windows will also appear to be much much faster and smoother.

  23. Re:Progress by Brandybuck · · Score: 2, Interesting

    Try using something like WindowMaker and some non-GTK non-QT apps.

    I'll have to disagree with you here, because you're comparing apples to oranges. Those KDE and GNOME apps seem slightly slower and less responsive because they've been jammed packed full of functionality. The KDE desktop does about a hundred times as much as the bare WindowMaker window manager. A KDE application is going to pull in ten times the functionality from the KDE librarieas than a bare xlib application will get from X.

    The very same thing holds true under Windows, but few people are honest enough to admit it. Windows 95 was snappy and responsive under a 90MHz Pentium and 8MB RAM. But try putting Windows XP on the same system! The difference is that Windows 95 didn't have a tenth the functionality of XP, and that's not even counting the eye candy. When I compare the workstation in front of me between Windows XP Pro and FreeBSD with KDE, I am finding that while XP apps may sometimes start up faster, they most certainly are NOT more responsive. Your situation may be different, but in my work environment that is what I am seeing.

    --
    Don't blame me, I didn't vote for either of them!
  24. Re:Progress by glitchvern · · Score: 3, Interesting

    You can force it to use backing store by starting the X server with the +bs -wm options. According to Alan Cox this is better and feels snappier on most setups but will kill a tiny machine.