3 ms·
I agree -- it would be nice if X didn't take the state for most of my apps with it when it crashed (not that it crashes with any regularity). On the other hand
by apotheon 17y ago
I agree -- it would be nice if X didn't take the state for most of my apps with it when it crashed (not that it crashes with any regularity).
On the other hand, the guy's complaints regarding X crashing and comparisons to Aero are apples and oranges, from what I can see (though I wasn't there to read error messages, so of course there's no way to be sure). It seems like his problem with X crashing was one of the GUI itself crashing, in its entirety, whereas Aero crashed when there was specifically a driver issue not directly related to Aero itself.
Aero is able to get around it by having a secondary "legacy" GUI system to back it up, and by having multiple drivers so a "lesser" driver can kick in. X has lesser drivers available to it, but there's no backup GUI system to back it up.
Now, imagine that the fundamental interface between the kernel and the GUI actually crashed (sorry about the hand-wavy way I phrased that -- since Unix/Linux systems and MS Windows systems do it differently, I can't get more specific). What would Unix with X do? Well, it'd fall back to the command line.
What would MS Windows with Aero do? It would fall back to whatever passes for a blue screen of death in the Windows 7 world, because MS Windows basically doesn't have an OS without the GUI. The command line interface is part of the damned GUI in MS Windows.
I'm not saying X is perfect. It does indeed need a lot of fixing. I actually think we'd be better of replacing it from scratch, if we could get everyone on board. I do not, however, think that MS Windows is the model to use. In fact, I think that on a good day, MS Windows is only nearly as good as X. In short, X and the MS Windows GUI stack both suck, but at least the way X works with the OS is marginally less stupid than the way MS Windows works with its GUI systems.
- tsuraan 17y agoI think you're right about X versus Aero being apples to oranges, but that's sort of the problem. In windows, it looks like the state of an application's GUI is separate from the state of the rendering system. In X, the two things are in the same process space. In windows, when the renderer crashes, GUI state isn't lost, a new renderer is started, and the user continues his day, slightly irritated. In X, the renderer crashes, and all applications crash as well. The user is somewhat more irritated. If X were split into a renderer and an application state tracker (like, I assume, windows does), then the renderer could crash all day, and the applications wouldn't ever notice. In windows, if the application state tracker crashes, you're screwed, but that since the state tracker doesn't seem to depend on any third-party drivers, it's easier to verify its functionality and try to ensure its stability. As for a rewrite, I'm not really sure how much of old XFree is still around. X has been modified in the past few years to no longer require configuration for its input (or, technically its video, but I still don't trust that). It supports multiple pointers, and in Linux on Intel, it doesn't even have to do initialize and exert low-level control over the video card. Things really are looking up for X, and I think your rewrite might actually be happening as we speak. It's just incremental, and with constant releases :)
- apotheon 17y ago> In windows, it looks like the state of an application's GUI is separate from the state of the rendering system. It only looks that way because of the fact MS Windows Vista has two whole window managers integrated with the base OS itself, and it appears to run them both at the same time so that when one fails the other's there to pick up the slack. In fact, I'm not entirely sure Aero is a windowing system -- it may be an effects feature package layered on top of the one and only windowing system. If that's the case, the described behavior actually has nothing to do with applications being able to survive the crash of the windowing system, because that's not what actually happened. Of course, this is all speculation (since I don't have access to the source code for the windowing system on Vista, for instance), but it's speculation based on what I've observed and what was claimed in this extended complaint about how X Windows on Ubuntu is too primitive. > As for a rewrite, I'm not really sure how much of old XFree is still around. Starting from XFree probably wouldn't do much good. The whole thing is a mess, from what I've seen, and needs "rearchitecting" (to buzzwordize the discussion). Then again, I'm not an X Window system expert, so maybe I'm missing something important. > Things really are looking up for X, and I think your rewrite might actually be happening as we speak. It's just incremental, and with constant releases As long as things get better rather than worse, I guess that's a good sign. I'm just not sure that the changes I've seen are indications that it's moving in a better direction; it kinda looks like it's just moving in a different direction, with some of the changes (but not all) being improvements.